はじめに
昨今、会話型AIの需要が高まっており、特にOpenAIのChatGPTが注目を浴びています。Flutterは、クロスプラットフォームアプリ開発に人気のあるフレームワークで、iOSとAndroidの両方で簡単にアプリを開発できます。この記事では、FlutterアプリにChatGPTを統合する方法について解説します。
OpenAI APIとは?
OpenAI APIは、OpenAIの強力なAIモデル、ChatGPTにアクセスするためのインターフェースです。このAPIを使用することで、独自のアプリケーションやサービスにChatGPTの機能を組み込むことができます。
こちらはOpen AIの公式ページです
https://openai.com/
FlutterアプリでChatGPT APIを利用する
1. OpenAI APIキーの取得
最初に、OpenAIのウェブサイトにアクセスし、APIキーを取得します。APIキーは、アプリケーションがOpenAI APIにアクセスする際に必要です。
APIキーを取得する方法は下記で紹介しています
OpenAIのGPT APIを使いこなす:効率的なAIアプリケーション開発への一歩
2. HTTPリクエストの準備
HTTPリクエストを送信するために、httpパッケージをpubspec.yamlファイルに追加します。
dependencies:
flutter:
sdk: flutter
http: ^0.13.3
3.APIを呼び出すための関数を作成
httpパッケージを使用して、OpenAI APIを呼び出すための関数を作成します。この関数は、promptを引数に取り、ChatGPTからのレスポンスを返します。
ちなみにAIモデルは、今回は
を利用していますが任意に変更できるためこちらを参考にしてください
API Keyは適宜発行されたキーで変換してください
また、API keyはコードに直接書くのはセキュリティ上NGだと思うので別ファイルや環境変数などに書いてそこから利用するようにしましょう
import 'dart:convert';
import 'package:http/http.dart' as http;
Future getResponseFromChatGPT(String prompt ) async {
final url = 'https://api.openai.com/v1/engines/davinci-codex/completions';
final apiKey= 'ここにAPI Keyに変換してください';
final response = await http.post(
Uri.parse(apiUrl),
headers: {
'Authorization': 'Bearer $apiKey',
'Content-Type': 'application/json',
},
body: json.encode({
'model': 'gpt-3.5-turbo',
"messages": [
{"role": "user", "content": prompt}
],
'max_tokens': 50,
"temperature": 0.5
}),
);
if (response.statusCode == 200) {
final data = json.decode(response.body);
return data['choices'][0]['message']["content"];
} else {
print(response);
throw Exception('Error: ${response.statusCode}');
}
}
まとめ
この記事では、FlutterアプリにOpenAIのChatGPTを統合する方法について説明しました。これにより、効率的な会話型AIアプリを開発できます。UIのカスタマイズや機能の追加を行い、ユーザーにとって魅力的なアプリを開発しましょう。