3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

こんにちは!!
やどかりの代表やっている松澤です。

以前からAIについては未来を語る上でいろいろと出ておりましたが
今年はChatGPTの登場で一気にAI熱があがりましたね。
みなさんもChatGPTを触られている方も多いと思いますが、
一歩踏み込んでChatGPTの元となっているOpenAIの使い方を
簡単に説明しようと思います。

先に私が以前に試して、ハマったポイントなどを詳しく見たい方はこちらもどうぞ。
ChatGPTが話題なのでOpenAIを試してみた!
OpenAI続き。動いたのでmessagesやroleパラメータをいじってみる
OpenAIの生成AIで画像を作ってみよう!

環境構築に関して

細かい導入の手順に関しては「ChatGPTが話題なのでOpenAIを試してみた!」の記事をみてもらうと良いと思います
アカウント作成時に無料で使える枠もありますので、ある程度はお試しができます。
ChatGPTが話題なのでOpenAIを試してみた!

早速サンプル使って動かしてみる

環境を作成すると一番オーソドックスなmessageのやりとりのサンプルです。

client = OpenAI()

completion = client.chat.completions.create(
  model="gpt-3.5-turbo",
  messages=[
    {"role": "system", "content": "You are a poetic assistant, skilled in explaining complex programming concepts with creative flair."},
    {"role": "user", "content": "Compose a poem that explains the concept of recursion in programming."}
  ]
)

print(completion.choices[0].message)

コードの量は本当にミニマムではありますが、これで最低限の動作を実行することができます。
少しだけ説明します。

  • model
    OpenAIの仕組みでは必ず使用するmodelを指定します。modelは脳みたいなもので、何に特化したmodelを使うかで得意な分野が違います。ここで指定しているgptはChatGPTの元になっているmodelです。

  • messages
    ここで実際のメッセージのやりとりを記載していきます。

  • role
    roleは役割です。今回はsystemとuserで指定をしています。
    systemがイメージとしてはAIアシスタントのキャラクターの設定と考えてください。
    サンプルの例では「あなたは、複雑なプログラミングの概念を創造的なセンスで説明することに長けた、詩的なアシスタントです。」ということでポエムを語るキャラクターの設定ですねw
    そしてuserで実際の質問を自分が設定したキャラクターに投げかけます。

サンプルの例では英語で全部設定されていますが、実際には日本語での設定で問題なく動きます。
これを実行するとAIアシスタントから回答が返ってきますので(completion.choices[0].message)、サンプルではこちらを画面にprintにて表示しています。

これで自分オリジナルのキャラ設定をしたAIアシスタントの完成です。
非常に簡単にできてしまうので、プログラムというわけでもなく、
実際にはsystemで設定するキャラ設定を正しくするのが難しい感じです。
特徴をうまく説明してパラメータとして渡すことで期待するキャラクターになります。

AIに画像を作成してみたい場合はこちら

from openai import OpenAI
client = OpenAI()

response = client.images.generate(
  model="dall-e-3",
  prompt="日本人でいけてる社長",
  size="1024x1024",
  quality="standard",
  n=1,
)

image_url = response.data[0].url
print(image_url)

こちらもめっちゃシンプル!!
先ほどと同じようにmodelを画像生成に特化したmodelに変更します。
そして欲しい画像をpromptで指定するだけです。

ここまででOpenAIについてはどうでしたでしょうか。
いつも使用されているChatGPTの中身や仕組みが少しだけ理解が深まると思います。

あとは組み合わせとアイデア次第でいくらでも世界が広がっていくと思うと
ワクワクすることがたくさんあります!!

今後広まっていくだろうAIについてを少しだけ深掘りしてみようの会でした。
ありがとうございました。

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?