人工知能とChatGPT
2023 年 4 月 28 日に発表された ADUG シンポジウム トークのソース コードとドキュメント。その後、AI の機能をさらに実証するためにコードを追加および強化しました。
このプロジェクトの目標は、delphi ユーザーがアプリケーションで AI テクノロジーを使用できるようにすることです。 AI にはさまざまな種類があり、数千の異なるモデルがあります。このプロジェクトは、さまざまな種類の AI モデルへの汎用インターフェイスを作成し、それらに簡単にアクセスできるようにすることに取り組んでいます。
人工知能 (AI) は、コンピューター科学、数学、認知心理学を組み合わせて、複雑なタスクを実行できるインテリジェント システムを作成する学際的な分野です。その急速な進歩により、AI の多用途性を示す幅広いアプリケーションが誕生しました。
言語翻訳もそのようなアプリケーションの 1 つであり、AI を活用したツールが言語間を効率的に翻訳し、世界中のユーザー向けのソフトウェア プログラムの翻訳などのタスクを簡素化します。 AI は人間のような会話にも優れており、人間の言語を自然に理解して応答する対話型アプリケーションを備えています。音声認識とリアルタイムの音声テキスト変換により、変換とシームレスな音声ベースの対話が可能になり、AI 駆動型アプリケーションがよりアクセスしやすく、ユーザーフレンドリーになります。
創造的および芸術的な領域では、AI はテキストの説明に基づいて画像を生成し、視覚的なコンテンツを理解して作成する能力を示します。 AI のコンピューター ビジョン機能により、写真や文書内の顔やその他のオブジェクトを正確に認識できるようになり、視覚認識タスクやセキュリティや自動化などのさまざまなアプリケーションにおける可能性が実証されています。
データを分析および処理し、包括的なレポートを生成する AI の機能は、さまざまな領域でのその価値を際立たせます。さらに、AI を活用したツールは音声ファイルを文字テキストに書き起こすことができるため、書き起こしタスクがより効率的かつ正確になります。
以下のサンプル プログラムは、Delphi プログラマが現在利用できる機能を実証する試みです。私は、さまざまなプロバイダーを次のように交換できるように、汎用 API の作成に取り組んできました。
- 実験
- 現在の主要な AI モデルをフォローする
- 価格に基づいて簡単に変更できるようにする
- ベンダーロックを回避する
- または他の理由で。
ChatGPT プロンプト
GPT プロンプトの例
オリジナルの 2023 ADUG シンポジウムのプレゼンテーション スライド
サンプルプログラム
- チャットGPTAアクション
- ChatGPT GPT アクションに追加して、コンピューターで Delphi コードを記述できるようにするシンプルなサーバー アプリ。 ChatGPTAction で作成されたサンプル プログラムについては、「AI で生成された Delphi」を参照してください。
- 埋め込みデモ
- 話す
- さまざまな Text to Speech API と利用可能なさまざまな音声 (FMX) の呼び出しをデモするプログラム
- 翻訳する
- さまざまなクラウド API を使用して言語間の翻訳を行います。
- Delphi の組み込み多言語リソース サポートを使用する場合、Delphi プログラムの翻訳が簡素化されます。
- DelphiChatGPT
- ChatGPT に質問を書き、答えを読み上げさせます。
- 顔検出
- 写真内の顔を検出します。
- 天気
- ベンディゴの天気予報を気象局に問い合わせて 1 ~ 2 段落を生成し、読み上げます
- 音声の転写
- 音声ファイルをアップロードし、クラウド音声テキスト API 経由で翻訳します。
- 音声認識
- マイクから直接音声をリアルタイムでテキストに変換し、OpenAI の GPT にフィードして応答を読み上げます。
- 画像生成
- OpenAI の DALLE-2 および DALLE-3 API を使用して指定したテキストを使用して画像を生成します。
- 請求書の処理
- PDF 請求書から重要な詳細を抽出し、機械可読な JSON 文字列としてフォーマットします
- テストAPI
- さまざまな API と API の機能をテストするプロジェクト
プロジェクトは LLM 機能をサポートします
特徴 | GPT-4o | Azure OpenAI サービス | グロク | xAIのグロク | アントロピックのクロード | Googleのジェミニ |
---|
ビジョンサポート | はい | はい | はい | はい | はい | いいえ* |
関数呼び出し | はい | はい | はい | はい | いいえ* | いいえ* |
*機能は現在サポート/実装されていません
質問/サポートが必要ですか?
問題を作成してください。それに返信します。
使用/利用可能なプロバイダー
- Google - テキスト読み上げ、LLM、翻訳
- Microsoft Azure - テキスト読み上げ、GPT、翻訳
- Amazon - テキスト読み上げ、翻訳
- Anthropic claude-3-opus、claude-3-sonnet、claude-3-haiku。現在利用可能な最大のコンテキスト ウィンドウ (200k トークン) の 1 つをサポートします。
- X.AI grok-beta LLM
- 幅広いモデルへの複製アクセス
- ハグフェイスは幅広いモデルにアクセスできます
- イレブンラボのテキスト読み上げおよび音声クローン作成
- OpenAI テキスト読み上げ、ウィスパー音声認識、DALLE-2、DALLE-3 画像生成、GPT4 LLM
- AssemblyAI音声認識
- DeepGram音声認識
- Rev.AI音声認識
- Conqui-ai Docker コンテナからローカルでさまざまなテキスト読み上げモデルを実行する
- CodeProject-Ai ローカル顔検出。
プロジェクトを機能させる
- 各クラウド API は、それぞれの開発者コンソールでセットアップされている必要があります。
- TestAPIs プロジェクトを実行し、[設定] -> [API キー] メニュー項目を選択します。使用するプロバイダーの API を追加します。
- 特定のプロバイダーを使用していない場合は、そのプロバイダーのキーは必要ありません。
コードと設定方法に関する質問
- コードに関する質問がある場合は、お気軽に問題を提起してください。このプロジェクトには多くの作業があり、セットアップしなければならないことがたくさんあることは承知しています。そのため、ドキュメントを改善して、このプロジェクトのすべての部分を誰でも簡単に使用できるようにしたいと考えています。
将来の可能性のある研究/研究分野
- エンベディングを使用して大規模なデータセットを検索する
- Python4Delphi を使用すると、Delphi からさまざまな Python AI ライブラリを呼び出すことができます。
人工知能 関連リンク
TensorFlow.Delphi
Whisper.cpp 音声認識
ラマ.cpp
ラマパス
Bing イメージ クリエーター
ビング
ChatGPT の RDOpenAI Delphi 実装 - イベントベースのコンポーネント
ChatGPT OpenAI ChatGPT
DelphiOpenAI OpenAI 用の Delphi ライブラリ
ChatGPTPluginForLazarus Lazarus IDE 用の OpenAI (ChatGPT) プラグイン。
ChatGPT Delphi で書かれた Firemonkey ChatGPT インターフェイス。
AI-Playground-DesktopClient StableLM、ChatGPT などの言語モデルにアクセスするための Firemonkey 言語モデル プレイグラウンド。
AI コード トランスレーター GPT を使用してプログラミング言語間の翻訳を行う
TOpenALPR オープンソースのナンバープレート認識
PgVector PgVector を使用すると、SQL データベースでのベクター/エンベディングの保存とクエリが可能になります。
CommonVoice 音声認識用の録音の公開データセット
ハグフェイス
オープンアシスタント
プロジェクトの構築に必要な外部ライブラリ
- ICS 9.0、または Delphi に組み込まれている GetIt パッケージ マネージャーから。 - 音声認識用
- landgraf-dev/aws-sdk-delphi AWS SDK
- ChatGPTAction 用の DelphiMVCFramework
サンプルプロジェクトの作成に使用されるツール
- https://github.com/PKGeorgiev/Delphi-JsonToDelphiClass
- バイオリン弾き
- Delphi の XML データ バインダー