自動化

【C#】ChatGPTAPIを使用して、レスポンスを返す方法(モデル:text-davinci-003、chatgpt3.5-turbo対応)visual studio2022を使用しています。

このブログではAffinger5を使用しています。

ブログテーマが気に入った方はコチラをクリック

ChatGPTのレスポンスを返すプログラムを作成する。

今回はC#プログラミングでChatGPTから応答を返すプログラムを作っていきます。

今回の対象モデルは【text-davince-003】と【chatgpt3.5-turbo】です。

環境はVisual Studio2022を使用しています。

ChatGPTのアカウントは既に生成したことが前提です。

C#を使用して、ChatGPTのレスポンスを返すプログラムを作ってみよう!
サルモリ

ChatGPTAPIキーの発行手順

まずは、ChatGPTのAPIキーを発行する必要があります。

step
1
https://openai.com/api/にアクセスします。

step
2
「GET STARTED」をクリックします。

step
3
アカウントは既に作成したと思うので、「Continue」をクリックします。

 

step
4
メールアドレスとパスワードを入力し、Continueボタンを押下します。

step
5
OpenAIの利用方法について質問に対し、個人利用として「I’m exploring personal use」を選択します。画像がなくてすみません。

以上でAPIキーを発行するまでのアカウント登録まで完了します。

step
6
メニュー画面の右上の「Personal」アイコンをクリックし、「View API Keys」をクリックします。

step
7
「Create new secret key」を押下すると、APIキーを発行することができます。

発行したAPIキーをコピーし、プログラム上で指定すると使うことができます。

APIキーの発行手順については以上です。

サルモリ
これでAPIキーの発行が完了したよ!!

ライブラリのインストール

プロジェクトを作成し終わったら、ChatGPTAPIと接続する便利なライブラリをインストールします。

step
1
メニューの「ツール」⇒「NuGetパッケージマネージャー」⇒「ソリューションのNuGetパッケージの管理」をクリックします。

step
2
参照を押下し、検索テキストボックスに「OPENAI」と入力します。

step
3
「Betalgo.OpenAI.GPT3」を探して、選択します。

step
4
「プロジェクト」を選択し、インストールボタンを押下します。

step
5
「I Accept」ボタンを押下します。

step
6
緑のアイコンが付くと正常にダウンロードができています。

以上でライブラリのインストールは完了です。

サルモリ
これで必要なライブラリのインストールは完了だよ!

text-davince-003を使用するソースコード

早速、【text-davince-003】モデルを使ったソースコードをみていきます!

APIキーを入力して、下記のソースコードを実行してみてください!

 出力結果
消費税のブログタイトル考えてください。
『サラリーマンのための5つのポイント!実践型消費税のお話』

ChatGPTからレスポンスが返ってきましたね!

Selectメソッド、FirstOrDefaultメソッドはLinqのメソッドです。

Linqを分かりやすく解説した本を執筆したので、ぜひ読んでみてください!

Kindle Unlimitedなら無料で読めます!

サルモリ
Chatgptから応答が返ってきたね!!

chatgpt3.5-turboを使用するソースコード

続けて、chatgpt3.5-turboを使用したソースコードをみていきます。

chatgpt3.5-turboから会話履歴も一緒にリクエストするため、

String型でなくリスト型などでリクエストする必要があります。

「Betalgo.OpenAI.GPT3」では、リクエスト用のクラスも用意されているので、それを使っていきましょう!

対応したソースコードが下記となっています。

 出力結果
system筋肉トレーニングuserブログタイトルを考えてください。
「筋肉トレーニングで理想のボディを手に入れよう!」

上記のソースコードのように、ChatMessageクラスをリスト化した値をリクエストします。

userは現在のリクエスト、systemは過去のリクエストを表しています。

chatgpt3.5-turboからは過去のリクエストも考慮して、レスポンスを返してくれることが可能となりました。

ロールは下記のような意味を持っています。

role

内容

user

現在のリクエスト

system

過去のリクエスト

assistant

過去のレスポンス

そのため、下記のようにsystemのソースコードをコメントアウトし、リクエストをすると、

 出力結果
userブログタイトルを考えてください。
「日々のささやかな幸せを綴る日記」

筋トレとは全く関係ないブログタイトルとなりましたね。

このようにchatgpt3.5-turboから会話履歴に基づいたレスポンスを返すことが可能となりました。

chatgpt3.5-turboの解説は以上です。

サルモリ
上記のプログラムを改良すれば、chatgptのアプリを作ることができるよ!!

まとめ

今回はC#でChatGPTを使用する方法を解説していきました。

細かいソースコードの解説はLinqやリストなどの説明となり脱線してしまうため、本記事では割愛させて頂きました。

上記のプログラムを使えば、ChatGPTと連携するプログラムはすぐに作れると思います!ぜひご活用ください!

最後まで読んで頂き、ありがとうございました!

サルモリ
最後まで読んでくれて、ありがとう!!

 

 

C#のLinqをさらに学びたい方へ

C#のLinqを理解して頂くために参考書を執筆致しました!

Linqの演習問題はこちらの参考書に載せているので、問題を解いて理解を深めたい方はこちらの参考書チェックしてください!

下記の画像をクリック!!kindleunlimitedの会員であれば無料で見れます!

⇩初心者向け      ⇩中級者向け

C#でChatGPTAPIを使ってブログ作成を自動化しませんか?

-自動化

Ads Blocker Image Powered by Code Help Pro

広告ブロックを検出しました。

ブラウザの広告機能を使用して広告をブロックしていることが検出されました。
ブラウザの広告ブロッカーを無効にし、「更新」をクリックしてください。

Powered By
Best Wordpress Adblock Detecting Plugin | CHP Adblock