LLMを使用してエンタープライズデータとチャットします
このサンプルは、独自のデータでChatGPTのようなエクスペリエンスを作成するためのいくつかのアプローチを示しています。 Azure Openaiサービスを使用して、CHATGPTモデル(GPT-35ターボおよびGPT3)、ベクトルストア(Pinecone、Redisなど)またはデータインデックス作成と取得のAzure認知検索にアクセスします。
リポジトリは、独自のデータをアップロードする方法を提供し、エンドツーエンドを試す準備ができています。
更新
- 3/30/2024-リファクタリングは、チャット、チャットストリーム、QNA、アップロード、および管理機能を維持します。他のすべては、独自のレポに移動されます。
- 3/10/2024-プロンプトフローバージョンをEntaoaipfに移動します
- 3/9/2024-高度なRAGテクニックとマルチモーダルラグパターンの初期バージョン
- 2/28/2024 -SEC分析機能を削除すると、SECで独自のレポに移動しました
- 1/28/2024 -PIBで独自のレポジトリに移動するときにピッチブック機能を削除します
- 1/19/2024- PythonパッケージとOpenai> 1.0を更新しました。 OpenaiおよびLangchainで導入された変更のために、すべてのPython APIに変更された変更。
- 10/12/2023-自律プロンプトフローの初期バージョン。現時点では、Pineconeインデックスをサポートしていますが、認知検索とRedisのサポートはまもなく更新されます。
- 9/29/2023 -Evaluate PromptFlowを追加しました。 Azure MLで作成されたプロンプトフローを既存の実行に取り付けて、次の評価プロセスに対して評価できます。
- 接地 - Q&Aの接地性評価フローは、最先端の大規模言語モデル(LLM)を活用して回答の品質と安全性を測定することにより、Q&A検索拡張生成システムを評価します。測定を支援するために言語モデルとしてGPT-3.5を利用することは、従来の数学的測定と比較して、人間の評価との高い一致を達成することを目的としています。 gpt_ground性(コンテキストに反して):モデルの予測された答えがコンテキストに対してどの程度接地されているかを測定します。 LLMの応答が真実であっても、コンテキストに対して検証できない場合でも、そのような応答は接地されていないと見なされます。
- ADAの類似性 - Q&A ADA_SIMILARITY評価フローは、最先端の大規模言語モデル(LLM)を活用して回答の品質と安全性を測定することにより、Q&A検索拡張生成システムを評価します。測定を支援するために言語モデルとしてGPT-3.5を利用することは、従来の数学的測定と比較して、人間の評価との高い一致を達成することを目的としています。 ADAの類似性評価フローにより、LLM支援ADA類似性Metri ADA_SIMILARITYを使用してモデルを評価および評価できます。モデル予測とグラウンドトゥルースのADA埋め込みのコサインの類似性を測定します。 ada_similarityは範囲の値です[0、1]。
- コヒーレンス - Q&Aコヒーレンス評価フローは、最先端の大規模言語モデル(LLM)を活用して応答の品質と安全性を測定することにより、Q&A検索拡張生成システムを評価します。測定を支援するために言語モデルとしてGPT-3.5を利用することは、従来の数学的測定と比較して、人間の評価との高い一致を達成することを目的としています。コヒーレンス評価フローにより、LLM支援コヒーレンスメトリックでモデルを評価および評価できます。 GPT_COHERENCE:モデルの予測された答えですべての文の品質を測定し、それらが自然にどのように合うかを測定します。コヒーレンスは1〜5のスケールで採点され、1が最悪で、5が最高です。
- 類似性 - Q&Aの類似性評価フローは、最先端の大手言語モデル(LLM)を活用して応答の品質と安全性を測定することにより、Q&A検索拡張生成システムを評価します。測定を支援するために言語モデルとしてGPT-3.5を利用することは、従来の数学的測定と比較して、人間の評価との高い一致を達成することを目的としています。類似性評価フローにより、LLM支援の類似性メトリックでモデルを評価および評価できます。 GPT_SIMILARITY:ユーザーが提供するグラウンドトゥルースの回答とモデルが予測される答えの類似性を測定します。類似性は1〜5のスケールで採点され、1が最悪で、5が最高です。
- F1スコア - Q&A F1スコア評価フローは、予測された回答とグラウンドトゥルースの単語数に基づいて、F1スコアを使用してQ&A検索拡張生成システムを評価します。 F1スコア評価フローにより、グラウンドトゥルースの正規化されたバージョンと予測される答えの間に共通トークンの数を使用して、F1スコアメトリックを決定できます。 F1スコア:予測された答えとグラウンドトゥルースのトークンに基づいて、F1スコアを計算します。 F1スコアは、範囲の値です[0、1]。グラウンドメトリックは1〜5のスケールでスコアリングされ、1が最悪で、5が最高です。
- 9/22/2023-SQLaskのPromptFlowを追加しました。
PFSQLASK_URL
およびPFSQLASK_KEY
構成値が追加されて、機能を有効にするために展開されたエンドポイントを追加します。また、 SynapseName
、 SynapsePool
、 SynapseUser
、 SynapsePassword
の構成値がentaoai
Promptflow接続に追加されることを確認してください。 CHATGPTの[管理]ページへのセッション機能の削除を移動しました。 - 9/20/2023-構成を追加して、エンドユーザーが共有したベストプラクティスに基づいて、認知検索ベクターストアインデックス(ハイブリッド、類似性/ベクトル、ハイブリッド再ランク)の検索タイプを変更できるようにしました。 QNA、チャット、プロンプトフローが変更されます。 QNAとチャットは、ヘルパー関数を使用して、Langchainとプロンプトフローのカスタマイズされたベクトルストア実装を実装しています。フォローアップ質問を生成しないQNA/CHAT/PRONTSFLOWの問題を修正しました。
- 9/18/2023 -Langchainデータベースエージェント/チェーンを使用しないようにSQL NLPをリファクタリングし、代わりにカスタムプロンプトを使用します。
- 9/15/2023- Azure検索パッケージを11.4.0B9に変更し、Langchainを最新バージョンに変更しました。 QNAとチャットの両方のPromptFlowで評価を実行する機能を追加しました。 BERT PDFと評価データを使用して、迅速なフローでバッチと評価を実行できます。フローとE2Eプロセスを紹介するサンプルノートブックが利用可能です。 Bertチャットフォルダーを使用すると、ノートブックの形でE2Eプロンプトフロー、バッチ実行、評価をテストできます。
- 9/3/2023-プロンプトフローを使用してチャット用のAPIを追加しました。エンドユーザーがAzure関数をAPI(Webアプリの
ApiType
構成)として選択するか、プロンプトフローマネージドエンドポイントを使用するようにします。 - 9/2/2023-プロンプトフローを使用して質問に答えるためのAPIを追加しました。エンドユーザーがAzure関数をAPI(Webアプリの
ApiType
構成)として選択するか、プロンプトフローマネージドエンドポイントを使用するようにします。 - 8/31/2023-プロンプトフローを使用したLLMOPSの例を追加しました。リポジトリは、現在のAzure関数の代替としてプロンプトフロー展開モデルを使用する柔軟性を追加します。
- 8/20/2023-マークダウンファイルのサポート(zipファイルとして)を追加し、azure openaiembedingからchunk_size = 1を削除しました
- 8/11/2023-ストリーミングチャット機能の問題を修正しました。
- 8/10/2023-変更の破壊- すべてのコードをリファクタリングして、
OpenAiService
の代わりにOpenAiEndPoint
構成値を使用しました。 Azure API Managementを介したエンタープライズロギングで概説されているため、ベストプラクティスをサポートすることです。 APIMを使用する場合のOpenAiEndPoint
API Gateway URLであり、 OpenAiKey
製品/無制限のキーになります。 APIMを使用していない場合は、キーを変更する必要はありませんが、 OpenAiEndPoint
AOAI展開の完全な資格のあるURLであることを確認してください。 OpenAiService
使用されなくなりました。変更は、ストリーム機能上のチャットでの作業に影響を与えたため、今のところ無効になり、テストおよび修正が行われると有効になります。 - 8/9/2023-チェックボックスとしてChatGPTインターフェイスに関数呼び出しを追加しました。サンプルは、関数を呼び出す能力を示しています。現在、Weather API、Stock API、Bing検索がサポートされています。関数呼び出しはプレビューにあり、「2023-07-01-PREVIEW」の「APIバージョン」のみからサポートされているため、既存の展開を更新してそのバージョンを使用してください。呼び出し関数の詳細。既存の展開には、
WeatherEndPoint
、 WeatherHost
、 StockEndPoint
、 StockHost
、 RapidApiKey
構成へのAzure Functionアプリを追加します。 - 8/5/2023-「ストリーム」オプションを備えたチャットインターフェイスを追加しました。この機能により、会話をクライアントにストリーミングできます。
OpenAiChat
、 OpenAiChat16k
、 OpenAiEmbedding
、 OpenAiEndPoint
、 OpenAiKey
、 OpenAiApiKey
、 OpenAiService
、 OpenAiVersion
、 PineconeEnv
、 PineconeIndex
、 PineconeKey
、 RedisAddress
、 RedisPassword
、 RedisPort
Property in Azure App Service(WebApp)を追加する必要があります。 - 7/30/2023-未使用のコードを削除 - summaryandqaとチャット
- 7/28/2023 -Davinciモデルの使用の削除を開始しました。今のところ、ワークショップを除くすべての機能から使用法を削除しました。フィードバックに基づいてリファクタリングされた要約機能を使用して、ユーザーがプロンプトと事前に定義されたトピックを要約することができるようにします。
- 7/26/2023-その高度な機能はChatGPTセクションで利用できるように、開発者ツールからOpenAIプレイグラウンドを削除します。
- 7/25/2023-チャット機能のタブを追加して、「データでのチャット」ではなく、モデルから直接ChatGPT機能をサポートします。 Azure App Service(WebApp)に
CHATGPT_URL
プロパティを追加して、新しいAzure関数の展開以外の機能を有効にする必要があります。 - 7/23/2023- PIB UIの残りの機能と、PowerPointデッキを出力として生成する初期バージョンを追加しました。追加された新機能の場合、
FMPKEY
変数をWebApp構成に追加してください。 - 7/20/2023 -PIBデータと通信するための機能を追加しました(SECファイリングおよび収益コールトランスクリプト)。新しいAzure関数が展開されているため、展開されたAzure関数用のURLを使用して
PIBCHAT_URL
プロパティがAzure WebAppに追加されていることを確認してください - 7/18/2023-パフォーマンスの問題とバグの修正の一部を解決するために、PIBコードをリファクタリングしました。
- 7/17/2023-「Davinci」モデルの退職によるGPT3チャットインターフェイスを削除しました。
- 7/16/2023- PIB UIの初期バージョン(現在5つのステップをサポートしています - 会社のプロファイル、コールトランスクリプト、プレスリリース、SECファイリング、格付け/推奨事項)。有料のサブスクリプションにアクセスする必要があります(FMPまたはエンタープライズがアクセスできるものに基づいて変更する)。 FMPで使用するには、Azure関数に
FmpKey
を追加する必要があります。循環依存のため、Azure関数にSecDocPersistUrl
とSecExtractionUrl
手動で追加する必要があります。 - 7/14/2023 -GPT3.5 16Kモデルのサポートと、500以上のオーバーラップで4000トークを超えるドキュメントをチャンクする機能を追加します。 Chunksize> 4000の場合、QNA機能とチャット機能の両方でデフォルトで16Kトークンになります。 QNAおよびチャットインターフェイスのアプリケーションと認証にIDプロバイダーを追加しました。 GPT3.5 16Kモデルの場合、Azure Function Appに
OpenAiChat16k
プロパティを追加する必要があります。 - 7/13/2023-エンドユーザーがChunksizeとChunkoverlapの構成を選択できるようにします。オーバーライドプロンプトテンプレートの初期バージョン。
- 7/11/2023-ノートブックの形の機能的なPIB副操縦士。
- 7/8/2023 -ChatGPTのセッションの名前を変更する機能を追加しました。また、評価者ツールにUIを追加しました。この機能は、ドキュメントでLLMベースの評価を実行することに焦点を当てています。テストデータセットを自動生成し(質問と回答を使用して)、異なるパラメーターを使用してそのドキュメントでグレーディングを実行し、評価結果を生成します。 Azure耐久機能の上に構築されており、関数鎖パターンを使用して実装されています。
BLOB_EVALUATOR_CONTAINER_NAME
(同じコンテナ名がストレージアカウントに作成されていることを確認)とRUNEVALUATION_URL
(持続可能な関数展開のURL)構成を既存の展開用のAzure Webアプリに、評価者機能を使用する場合は追加する必要があります。 Azure関数の展開では、 AzureWebJobsFeatureFlags
(Value EnableWorkerIndexing)およびOpenAiEvaluatorContainer
設定を追加します。 - 7/5/2023-セッションを削除する機能を追加しました。その機能にはプレビューにある機能が必要であり、サブスクリプションのcosmosDBアカウントでそれを有効にする必要があります。 COSMOSDBを有効/展開していない場合に備えて、単純なトライ/キャッチブロックを追加しました。
- 7/4/2023- GPT3.5/ChatGPTインターフェイスの「セッション」の保存の初期バージョン。セッションとメッセージは、cosmosdbから保存/取得されます。 cosmosDBサービスが提供されるか、新しい展開用(既存の展開用)を作成していることを確認してください。 Azure FunctionsアプリとWebアプリの両方に、
CosmosEndpoint
、 CosmosKey
、 CosmosDatabase
、 CosmosContainer
設定を追加する必要があります。 - 6/25/2023-ノートブックは、回答品質の評価を体系的な方法(自動生成質問と評価チェーン)で紹介し、LLM QA設定(チャンクサイズ、オーバーラップ、埋め込み手法)をサポートします。詳細については、評価者ノートブックを参照してください。
- 6/18/2023-知識ベース管理をサポートする管理者ページを追加します。
- 6/17/2023-質問機能を尋ねる「質問リスト」ボタンを追加して、知識ベースにあるすべての質問のリストを表示します。 3つのプロパティ
SEARCHSERVICE
に続いて、 SEARCHKEY
とKBINDEXNAME
(AOAIKBのデフォルト値)をAzure App Serviceに追加して、「質問リスト」ボタン機能を有効にする必要があります。 - 6/16/2023-キャッシュされた知識ベースを保存するためのベクトルストアとしてAzure Cognitive Searchを使用する機能を追加します。 KBにない質問はLLMモデルに送信され、OAIを介して回答を見つけるか、キャッシュされたデータストアから返信されます。新しいプロパティ
KbIndexName
Azure Functionアプリに追加する必要があります。ノートブックを追加して、ワークショップの一部として機能をテストしました。 TODO:チャットインターフェイスからKBに質問を追加する機能を追加します(およびセッションベースにします)。 (キャッシュされた回答の代わりに)LLMからの「再生」回答の機能がまもなく追加されます。 - 6/7/2023-開発者ツールにOpenaiプレイグラウンドとCopilotの構築の初期バージョンを追加します(今のところはノートブックを使用していますが、最終的にはCopilot機能として移動されます)。リアルタイムの音声分析ユースケースのスクリプト、記録、および例を追加します。すぐに追加されます。
- 5/27/2023-シナリオを学習/実行するために活用できるノートブックの形でワークショップコンテンツを追加します。ノートブックはワークショップフォルダーにあります。ワークショップのコンテンツの詳細はこちらをご覧ください。
- 5/26/2023-要約機能を追加して、スタッフを使用してドキュメントを要約するか、mapReduceまたはrefineを使用して要約します。 (既存の展開で)この機能を使用するには、
OpenAiSummaryContainer
構成をAPPおよびBLOB_SUMMARY_CONTAINER_NAME
ConfigurationにAzure Appサービスに追加してください(入力した値がAzureストレージのコンテナ名と同じであり、コンテナを作成したことを確認してください)。また、 PROCESSSUMMARY_URL
構成をAzure App Serviceに追加する必要があります(入力する値がAzure Function URLと同じであることを確認してください)。 - 5/24/2023 -CSVファイルとCSVエージェントをアップロードする機能を追加して、表形式データに関する質問に答えます。スマートエージェントは、CSVデータに関する質問への回答もサポートしています。
- 5/22/2023-ソリューションにアップロードされたすべてのドキュメントと柔軟に相談できる「スマートエージェント」の初期バージョン。また、SQLデータベースシナリオと話すこともできます。より多くの機能が追加されると、エージェントはそれに基づいて構築し続けます(たとえば、CSV/Excelまたは表形式のデータと話す)
- 5/21/2023-開発者ツールの追加セクション - 実験コード変換とプロンプトの第一人者。
- 5/17/2023-レディスの代わりにエドガーソースを認知検索ベクターストアに変更します。
- 5/15/2023-インデックスを保存するためのベクトルストアとして「認知検索」を使用するオプションを追加します。 Azure Cognitive Searchは、純粋なベクター検索とハイブリッド検索と、Bingを単一の統合ソリューションで駆動する洗練された再ランクシステムを提供します。サインアップ。ワードドキュメントのアップロードをサポートします。
- 5/10/2023-ドキュメントのチャンク方法に関するオプションを追加します。フォーム認識者を使用する場合は、フォーム認識リソースが作成され、適切なアプリケーション設定
FormRecognizerKey
とFormRecognizerEndPoint
が設定されていることを確認してください。 - 5/07/2023- Azure OpenaiまたはOpenaiのいずれかを選択できるオプション。 Openaiについては、Azure Functionsの設定で
OpenAiApiKey
確保してください。 Azure Openaiには、 OpenAiKey
、 OpenAiService
、 OpenAiEndPoint
エンドポイント設定が必要です。チャット/質問/SQL NLP/Speech Analyticsおよびその他の機能(開発者設定ページから)のオプションを選択することもできます。 - 5/03/2023-アップロードに必要なパスワードインデックス管理から始まる管理者ページ
- 4/30/2023-タスクエージェント機能の初期バージョンが追加されました。自律エージェントは、より長く走るように設計されたエージェントです。あなたは彼らに1つまたは複数の長期的な目標を与え、それらはそれらの目標に向けて独立して実行します。アプリケーションは、ツールの使用と長期メモリを組み合わせます。初期機能は、実行ツールを使用してベビーAGIを実装します
- 4/29/2023 -AWS S3プロセス統合S3、AWS Lambda機能、Azure Data Factory(自動展開はまだ利用できない、スクリプトは/展開/AWSフォルダーで利用可能です)
- 4/28/2023- QAとチャット全体のバグ、引用、フォローアップの質問を修正します。ドキュメントからの応答を制限するために、少し制限があります。
- 4/25/2023-パワー仮想エージェントの初期バージョン
- 4/21/2023 -SQL Query&SQLデータタブをSQL NLPに追加し、チャット&Ask機能の引用とフォローアップの質問を修正します
- 4/17/2023-チャット&アース機能のために、リアルタイムの音声分析とテキストへのスピーチとテキストからテキスト。 (開発者の設定からテキストへのスピーチ機能を構成できます。AzureEphereServicesが必要になります)
- 4/13/2023-ベクトルQAエージェントを使用して複数のドキュメントで質問するサポートに新機能を追加する
- 4/8/2023-SQLを尋ねる - SQLデータベースエージェントを使用するか、SQLデータベースチェーンを使用して
- 3/29/2023-自動展開スクリプト
- 3/23/2023-ドキュメントを保存するオプションとして認知検索を追加する
- 3/19/2023 -GPT3チャットの実装を追加します
- 3/18/2023-ドキュメントとサンプルQAで概要を生成するAPI
- 3/17/2023
- 複数のドキュメントのアップロードをサポートします
- バグ修正-Redis VectorStoreの実装
- 3/16/2023-最初のリリース、データを尋ねてデータとチャット
テストウェブサイト
チャットして、データを尋ねてください
特徴
機能のリスト
建築

Azure Architecture

キャッシュを使用したデータ上のQA

QA LLM評価

はじめる
始めましょう
構成
アプリケーションおよび関数アプリの構成
リソース
- chatgptを使用してエンタープライズデータに革命を起こす:azure openaiと認知検索の次のアプリ
- Azure認知検索
- Azure Openaiサービス
- Redis検索
- 松ぼっくり
- 認知検索ベクターストア
貢献
新しい機能の形であるかどうか、既存の機能を更新するか、より良いドキュメントであろうと、私たちは貢献を受け入れています。プルリクエストを作成してください。レビューしてマージします。
注記
Openai-Cogsearch、コールセンター分析、自動車評価者、エドガークローラーのレポン