実際に使ったわけではないのですが、情報をみかけたのでメモです。
(少し試すだけなら、ほぼお金はかからなそうではありますが。。)
Azure では OpenAI の AI モデルを利用できる Azure OpenAI Services を提供しています。
OpenAI Services 関連のドキュメント(日本語)が結構公開されているようで、その中に ChatGPT 用の DSL のドキュメントがありました。
あまりこの辺よく知らなかったのですが、
チャット マークアップ言語 (ChatML) と呼ばれる一意のプロンプト形式を必要とします。
ChatGPT にプロンプトを与えるために ChatML という言語を使用するんですね。
ページ中のコードの部分の prompt という引数に ChatML で記述した内容を書いて渡すようになっています。
response = openai.Completion.create(
engine="gpt-35-turbo",
prompt="<|im_start|>system\nAssistant is a large language model trained by OpenAI.\n<|im_end|>\n<|im_start|>user\nWhat's the difference between garbanzo beans and chickpeas?\n<|im_end|>\n<|im_start|>assistant\n",
temperature=0,
max_tokens=500,
top_p=0.5,
stop=["<|im_end|>"])
ChatGPT の Web インターフェイスで与えていたのとほぼ同じ内容を利用できるようですが、サービスとして面白いなと思ったのは、下記の Azure のサービスからデータを与えたりできるところです。
モデルが認識する必要があるデータの量が多い場合は、埋め込み、または Azure Cognitive Search などの製品を使用して、クエリ時に最も関連性の高い情報を取得できます。
でもまあ、触ってみないとよくわかんないですねぇ。。
触れる機会があったら実行結果とか追記します。