アプリケーションアシスタントで設定したツールがあり、それらのツールをビッグスピーチモデル(ChatGPTなど)のプラグインとして使用したい場合、次の方法を使用できます。
予備
1 登録/ログイン言語収集AIオンラインアカウント
- 登録/ログインアドレス:https://chat.jijyun.cn
2 アプリケーションアシスタントの作成
3 使用するツールを選択する
Tiburon Cloudが現在サポートしているすべてのアプリケーションは、Tiburon Cloud Application Centre(https://www.jijyun.cn/apps/)で確認できます。
4 アプリケーション認証の設定、フィールド設定
4.1 行動意図の説明
アクションインテントの説明は、このツールが何のためにあるのか、どのように使うのかをAIに伝える。一般的に、AIモデルはこのアクションを使うためにここの説明を参照する。
ヒントチップ::
複数のツールを一緒に使用する場合、複数のツール間のコラボレーション方法を設定することができます。 例えば、"請求書検証 "アプリケーションツールを追加しました。通常、ツールのインターフェースは、ユーザーが請求書のパラメータを渡して、請求書が正しいかどうかを検証する必要がありますが、一部のユーザーは直接請求書のスクリーンショットを送信して検証します。今回は、別のツール「自強雲OCR」で請求書の内容を抽出してから使用する必要があります。
そこで、請求書検証ツールのアクションインテントの説明に、「請求書が本物の請求書であるかどうかをチェックし、文書のURLを受信した場合は、まず「Tibco Cloud OCR」機能を使って文書のテキスト部分を抽出してから実行することができます」を追加しました。
4.2 アプリケーション認証設定
選択したツールが認証を必要とするアプリケーションである場合、まずアカウントの認証を完了してください。ビルトインの "ビジネス照会 "のような認証が不要なアプリケーションの場合、認証を追加する必要はありません。
オーソライズされたアプリケーションを追加する必要がある場合、口座オーソライズを追加する際にオーソライズパラメータを入力する必要があります。これらのパラメータを取得する方法については、認可に関する文書や説明ビデオを含む認可画面でご案内します。
4.3 フィールド設定
フィールド設定セクションの構成
-
- AIオートマッチ:このフィールドの値は、ダイアログの内容に基づいてAIによって自動的に生成されます。
-
- 手動選択:AIの選択は不要、デフォルト値を使用
-
- このフィールドを使用しないでください:一般的にオプションタイプのパラメータで、インターフェイスの実行時には使用されません。
ヒントチップ
各フィールドの下には、フィールド入力の書式がどうなっているかなど、AIにフィールドへの入力方法を知らせるために変更できるヘルプ指示が並んでいる。
5 APIインターフェース呼び出しの認証パラメータの取得
-
- <
- App Assistantの「Integration」セクションをクリックし、「API Interface」インテグレーションを見つけてクリックします。
-
- Add "をクリックしてAPIキーを取得します。このパラメータは、以降の呼び出しでインターフェイスを認証するために使用されます。
オープンAI アシスタント設定方法
OpenAIのアシスタントを使用して、設定したツールをFunctionとして使用するインターフェースを作成することができます:
1 前提条件
-
- Openai API_KEY が取得されました。
-
- AIアカウント登録に成功
-
- ステップ1:APIKeyを取得するために、Language Gathering AIプラットフォーム(https://chat.jijyun.cn/)でAPI統合設定を作成する。
-
- ステップ2:[指定されたアカウントの現在実行可能なアクションのリストを照会する]インターフェイスを呼び出して、スマートツールのリストを取得します。
-
- ステップ3:AIアシスタント・インターフェースを作成するためにopenaiを呼び出す(openaiが提供するSDKを使用することもできます)。https://platform.openai.com/docs/api-reference/assistants/createAssistant
2 デモのサンプルコード:
import requests
import json
openai_key = '替换成你的openai API_KEY'
jijyun_key = '替换成你的语聚AI API集成中的APIKey'
openai_service = "https://api.openai.com"
jijyun_service = "https://chat.jijyun.cn"
def get_jijyun_aitions():
'''获取集简云AI action列表'''
headers = {
'Authorization': f'Basic {jijyun_key}',
}
response = requests.request(
"GET", f"{jijyun_service}/v1/openapi/exposed", headers=headers)
if response.status_code == 200:
return response.json().get('results')
def jijyun_aitions_2_openai_tools(actions):
''''''
tools = []
if not actions:
return tools
for action in actions:
tools.append({
"type": "function",
"function": {
"name": action.get('operation_id'),
"description": action.get('description'),
"parameters": action.get('params'),
}
})
return tools
def createAssistant():
'''创建AI助手'''
actions = get_jijyun_aitions()
tools = jijyun_aitions_2_openai_tools(actions)
payload = json.dumps({
"instructions": "You are a helpful AI assistant.", // 可自定义指导说明
"name": "My First assistant",
"tools": tools,
"model": "gpt-4" //可自定义您的模型,目前集简云应用执行在GPT3.5即可顺畅运行,速度快价格低
})
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer $OPENAI_API_KEY',
'OpenAI-Beta': 'assistants=v1',
'Authorization': f'Bearer {openai_key}',
}
response = requests.request(
"POST", f"{openai_service}/v1/assistants", headers=headers, data=payload)
print(response.text)
def main():
createAssistant()
if __name__ == "__main__":
main()
pass
OpenAI GPTの設定方法
GPTs は OpenAI AI Intelligent Assistant で、GPTs の機能を作成・共有することができます。GPTsにTibbo Cloudのアプリケーションツールを利用可能なアクションとして設定することで、GPTsにTibbo Cloudの様々なアプリケーションを利用する機能を追加することができます。
1 ビデオ・プレゼンテーション
一時的にこのコンテンツをフライング・ブック・ドキュメント外に表示することができません。
(ビデオ内のAPIキー認証情報は削除されています。設定には実際のAPIキーを使用してください)
2 コンフィギュレーション・ガイダンス・ノート(指示)
ガイダンス・ノートの例
-
- ルール コンテンツの変更が可能
-
- 必須アクションどのようなアプリケーション・アクションを使うかによって、パーツを調整する必要がある。オリジナルの内容を維持することは、修正には推奨されない
-
- 使用方法中には、現在の形式や内容を維持する必要があるものもある。実際に使えるアクションに調整する
例
ルール
- できるだけ中国語で対応すること
IZPカスタムアクションの説明書。
ステップ1. /list_available_actions/を呼び出してAVAILABLE ACTIONSのリストを作成することで、リクエストの完了に必要なJI AI ACTIONを持っていることを確認していることをユーザーに伝える。AVAILABLE ACTIONSの出力から、必要なREQUIRED_ACTIONがAVAILABLE ACTIONSにあるかどうかをチェックし、あればステップ4に進む。 なければステップ2に進む。ステップ2.必要なアクションが利用可能でない場合、必要なアクションの設定リンクをユーザーに送信する。 必要なアクションが利用可能になったら知らせるように指示する。必須アクションが利用可能でない場合、ユーザーに必須アクションの設定リンクを送信します。 Hibernate Cloud AIアクションを有効にしたら知らせるように伝えます。 ステップ3. ユーザーが必須アクションを設定したことを確認したら、元の質問でステップ4に進みます。 ステップ4.として返される)available_action_idを使用します。
アイドル
フィールドに結果
run_action操作に必要な文字列を記入する。) run_action操作に必要な文字列を記入する。 ユーザーのリクエストを使用して、必要に応じて指示やその他のフィールドを記入する。アクション
- アクション:企業WeChatグループロボット:企業WeChatグループにメッセージを送信する
- アクション:奇信宝:企業向けビジネス写真情報の照会
- アクション:AI画像生成:画像の作成(テキストを入力して画像を生成する)
必須アクション]には、このGPTで使用したいアプリケーションアクションの名前を入力します。アプリケーションアシスタントのアプリケーション名とアクションを参照してください。
3 アクションの追加
以下の内容をスキーマにコピーしてください。以下のスキーマの内容を変更しないでください。
{
"openapi": "3.0.2"、
"info": {
"description": "Tiburonクラウド経由で何千ものアクションを実行する能力をGPTに装備する。"
}, "servers": ["servers"], "description": "SetSimpleクラウド経由で何千ものアクションを実行する能力をGPTに装備する。
「サーバー": [
{
"url": "https://chat.jijyun.cn"
}
],
"paths": {
"/v1/openapi/exposed":{」のように。
"get": {
"operationId": "list_available_actions", "summary": "利用可能なアクションのリスト", { "get": {
"summary": "利用可能なアクションのリスト", "parameters": [
「パラメータ": [
], "responses".
「レスポンス": {
"200": {
"description": "OK", "content": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AvailableActionResponseSchema"
}
}
}
}
}, "description": "List all the currently available actions": "現在利用可能なすべてのアクションをリストする".
"説明": "ユーザーが現在利用可能なすべてのアクションをリストする。 アクションを実行しようとして、それが存在しないというエラーを受け取ったら、まずこのリストを更新してみてください。をリフレッシュしてください。", "security": [
「セキュリティ": [
{
"AccessPointApiKeyHeader":[(アクセスポイントキーヘッダー)
]
}
]
}
},.
"/v1/openapi/exposed/{available_action_id}/execute_v2/": { 次のようになります。
"post": {
"operationId": "run_action"、
"summary": "アクションの実行"、
「パラメータ": [
{
"in": "path", "name": "available_action_id", [ {
「name": "available_action_id", "schema": { "run_action": { "run_action": "run_action", "parameters": [ "in": "path", "name": "available_action_id"、
"schema": {
name": "available_action_id", "schema": { "title": "利用可能なアクションID", "type": "string", "type": "available_action_id", "schema": {
「type": "string", "pattern": ".
「pattern": ".*_jjyibotID_.*例": "62_326_Contact_Action_ID_.
"example": "62_326_jjyibotID_jjyy_robot_1001"
}, "required": true, "example": "62_326_jjyibotID_jjyy_robot_1001
"example": "62_326_jjyibotID_jjyy_robot_1001"
}
「レスポンス": {
"200": {
"description": "OK"、
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RunResponse"
}
}
}
},
"400": {
"説明": "不正なリクエスト"、
「content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ErrorResponse"
}
}
}
}
}, "description": "データを使って利用可能なアクションを実行します。
"description": "データを使って利用可能なアクションを実行します。 list_available_actionsから関連するパラメータをリクエストのデータに含めます。", "requestBody": {
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RunRequest"
}
}
}, "required": true
"required": true
}, "security": [ "#/components/schemas/RunRequest" } }。
「セキュリティ": [
{
"AccessPointApiKeyHeader":[(アクセスポイントキーヘッダー)
]
}
]
}
}
},
「コンポーネント": {
"schemas": {
"AvailableActionSchema": {。
"タイトル": "AvailableActionSchema", "タイプ": "オブジェクト", {
"タイプ": "オブジェクト", { "プロパティ": {
"properties": {
「id": {
「title": "Id", "description": "一意のID"。
"description": "利用可能なアクションのユニークID。", "type": "string": "title": "Id", "description": "利用可能なアクションのユニークID。
「タイプ": "文字列"
}, "operation_id": { "id": { "title": "Id", "description": "利用可能なアクションのユニークID。
"operation_id": {
「title": "操作ID", "description": "利用可能なアクションの操作ID。
「description": "利用可能なアクションの操作ID。", "type": "string": "文字列。
"タイプ": "文字列"
}, "description": { "operation_id": { "title": "description": "利用可能なアクションの操作ID。
"description": {
「title": "説明", "description": "アクションの説明。
「description": "アクションの説明。", "type": "string".
「タイプ": "文字列".
}, "description": { "title": "説明", "アクションの説明。
「params": {
"title": "パラメータ", "description": "アクションの説明。
「description": "アクションで利用可能なヒントフィールド。", "type": "object".
"タイプ": "オブジェクト"
}
}, "required": [ "description": "アクションの利用可能なヒントフィールド。
"required": [
"id".
"operation_id"。
"description".
「params".
]
},
"AvailableActionResponseSchema": { "title": "AvailableActionResponseSchema".
"タイトル": "AvailableActionResponseSchema", "タイプ": "オブジェクト", "パラメータ" ] }, "AvailableActionResponseSchema": {
「プロパティ": {
"results": {
"title": "結果", "type": "array", {
"items": {
"$ref": "#/components/schemas/AvailableActionSchema"
}
}, "configuration_link": { 以下のとおり。
"configuration_link": {
"title": "設定リンク", "description": "ユーザーリンク".
"description": "configuration_linkで新しいアクションを設定するようユーザーを誘導します。 新しいアクションを設定するために、オプションでconfiguration_linkに?setup_action=...を追加することができます。 オプションでconfiguration_linkに?setup_action=...を追加することで、特定のJetCloudアプリとアクションを設定することができます。
「タイプ": "文字列"
}
}, "type": "string" }.
"required": [
「結果", "configuration_link
"configuration_link"
}, "required": [ "results", "configuration_link" ]。
},
"RunResponse": {
"title": "RunResponse", "description": "実行されたアクションの結果の要約です。
「type": "object", "properties": {{サブタイトル
"properties": {
「id": {
「title": "id", "description": "の id。
"description": "実行ログのID。", "type": "string": "summary": "run", "description": "実行ログのID。
「タイプ": "文字列"
}, "action_used": { "title": "Id", "description": "実行ログのID。
"action_used": {
"title": "使用されたアクション", "description": "実行ログで使用されたアクションの名前。
"description": "実行されたアクションの名前。", "type": "string": "run", "string": "log.
「タイプ": "文字列"
タイプ": "文字列
"input_params": {
"title": "入力パラメータ", "description": "説明": "パラメータ".
"description": "アクションを実行するために使用した/する予定のパラメータ。", "type": "object": "パラメータ", "description": "アクションを実行するために使用した/する予定のパラメータ。
"タイプ": "オブジェクト"
"review_url": {
"タイトル": "レビューURL", "説明": "以下のURL
"description": "アクションを実行したり、与えられたinput_paramsの指示に対してAIが行った選択をレビューするためのURL。", "type": "string": "アクションを実行するために使用した/する予定のパラメータ。
"タイプ": "文字列"
"result": {
「title": "結果", "description": "トリミングされた": {。
"description": "完全な結果の最初の項目を切り詰めた結果。 人間や言語モデルに最適!", "type": "object": "完全な結果の最初の項目を切り詰めた結果。
"タイプ": "オブジェクト"
人間や言語モデルに最適!", "type": "object}".
"additional_results": {
"title": "追加結果", "description": "残りの結果": {
"description": "残りの全結果。
"type": "array", "items": { "type": "array", "description": "残りの全結果。
"items": {
"タイプ": "オブジェクト"
}
}, "result_field_labels".
"result_field_labels": { 以下のようになります。
"title": "結果フィールドのラベル", "description": "結果のキーの一部に対する人間が読めるラベル。
"description": "結果のキーの一部に人間が読めるラベルを付ける。", "type": "object": "result_field_labels": { "result_field_label": { "title": "結果のフィールドラベル", "description": "結果のキーの一部に人間が読めるラベルを付ける。
"type": "object"
}, "status": { "status": { "オブジェクト
"status": {
「title": "ステータス", "description": "のステータス。
"description": "アクション実行のステータス。", "default": "success", "description": "アクション実行のステータス。
「enum": [
"enum": [ "success", "error", "enum": [ "成功", "エラー
"default": "success", "enum": [ "success", "error", "empty", "status": "title.
"empty", "default": [ "success", "error"、
"プレビュー"
タイプ": "文字列
「タイプ": "文字列"
}, "error": { "empty", "preview" ], "type": "string
「エラー": {
「title": "エラー", "description": "アクションの実行に失敗した場合のエラーメッセージ。
「description": "アクションの実行に失敗した場合のエラーメッセージ。", "type": "string
「タイプ": "文字列"
}, "type": "string", "description": "アクションの実行に失敗した場合のエラーメッセージ。
"assistant_hint": {
「title": "アシスタントのヒント", "description": "のヒント": "アクションの実行に失敗した場合のエラーメッセージ。
「description": "アシスタントが次に何をすべきかのヒント。", "type": "string": "文字列", "type": "文字列
「タイプ": "文字列"
}, "full_results": "full_results".
"full_results": {
"title": "完全な結果", "description": "完全な結果": {
"description": "利用可能な場合、要約されていない完全な結果。 常にオブジェクトの配列を返す。", "type": "array", "type": "次に何をすべきかのアシスタントのヒント。
"items": {
"type": "object"
}
}
"required": [
"id".
"action_used".
"input_params"。
"review_url".
"additional_results", "full_results
"full_results"
]
},
"ErrorResponse": {
「タイトル": "ErrorResponse", "タイプ": "オブジェクト", {
"type": "object", "properties": { "title": "ErrorResponse", "type": "object", "properties": { "properties": { "full_results" }.
"properties": {
「エラー": {
「title": "エラー", "description": "エラーメッセージ。
「description": "エラーメッセージ。", "type": "string".
「タイプ": "文字列"
}
}, "required": [ "description": "エラーメッセージ。
"required": [
"エラー"
}, "required": [ "error
}, "runRequest": { "runRequest": { "error" ]。
"RunRequest": {
"title": "RunRequest", "description": "可能な限り多くの関連情報をデータに詰め込もうとする。
"description": "Try and stuff as much relevant information into the data as possible. このタイプのアクションでは、オプションでプレビュー_onlyを設定することができます。このタイプのアクションは、ユーザーが実行前にプレビューしたい場合、オプションでpreview_onlyを設定することができます。", "type": "object", "runRequest": "可能な限り多くの関連情報をデータに詰め込もうとします。
"description": "可能な限り多くの関連情報をデータに詰め込もうとする。
「プロパティ": {
"data": {
「タイトル": "データ", "説明": "パラメータ": {
「タイプ": "文字列"
}, "preview_only": "preview_only".
"preview_only": {
"title": "プレビューのみ", "description": "trueの場合", {
"description": "trueの場合、アクションを実行せず、ドライランを行い、ユーザーが確認するためのプレビューを返します。", "default": false, false
"default": false, "type": "boolean": "default": false, "default": false
"タイプ": "boolean"
}
}, "default": false, "type": "boolean" }.
"必須": [
"data"
}, "required": [ "data" ]。
}, "securitySchemes": { "securitySchemes": { "data" }.
"securitySchemes": {
"AccessPointApiKeyHeader": {。
"type": "apiKey", "in": "header", { "accessPointApiKeyHeader".
"in": "header"、"name": "Authorisation"。
「name": "認可".
}
}
}
4 認証方法とAPIキーの設定
APIの認証方法を選択する
Auth Typeで「Custom」を選択し、App Helper API連携設定で取得したAPI Keyを追加する。
-
- APIキー:「準備:ステップ5」で取得したAPIキーを入力します。
-
- カスタム・ヘッダ名:Authorizationを記入
例
5 GPTのテストとリリース
設定が完了するとGPTが自動的に更新されるので、[Save]をクリックして使用範囲を設定します。
これを保存して、GPTを正式に使い始める:
一般的な問題
Q1: このサービスは有料ですか?
GPTなどの言語モデルから呼び出す場合、AIが生成したリクエスト・パラメータは、Tiburon Cloudアプリケーション・アクション・インターフェースを直接呼び出します。
ただし、Tibbo Cloudに組み込まれているアプリケーションの一部(ビジネス情報照会、入札情報照会など)は、使用ごとに課金されます。料金は、Tibbo Cloudプラグインセンター(https://apps.jijyun.cn/plugcenter)でご確認いただけます。
さらに、APIリクエストの頻度には制限があり、現在のデフォルトは毎秒20リクエスト(20QS)ですが、それ以上のリクエスト頻度が必要な場合は、お問い合わせください。
Q2:LangchainのようなLLMモデル・アーキテクチャでの使用はサポートされていますか?
サポートについては、別途文書を作成する。
Q3: インターフェイスしたいアプリケーションが、すでにTibbo Cloudとインターフェイスしているアプリケーションのリストにない場合はどうすればよいですか?
App Assistantツールで "Webhook "を設定し、ソフトウェアのインターフェイスを要求し、アクションの説明をカスタマイズすることができます。
アプリケーション・インターフェースをすべてのユーザーが利用できるようにしたい場合は、Tiburon Cloud Open Platformを通じてアプリケーションを提出し、認証および実行インターフェースを設定することができます。詳細については、https://jijyun.cn/open.html
Q4:GPTやファンクションではなく、直接アプリケーションアシスタントを呼び出してもいいのでしょうか?
アプリケーションアシスタント自体もAPIインターフェースの呼び出し方法を提供しています。インターフェースのドキュメントを参照してください: https://yuju2023.apifox.cn/api-95488292
Q5: ツールとして使用したい独自の知識コンテンツがある場合はどうすればよいですか?
GPTsはファイルのアップロードをサポートしていますが、サイズ制限とストレージコスト(1日あたり)があります。 私たちは、これを処理するためのより良い方法を提供します。まず、Language Gathering AIのナレッジセンターからアップロードし、ツールで使用するツールとして「Language Gathering AI: Query Knowledge Content」を追加します。
Q6 GPTが公開されないのはなぜですか?
GPTをマルチプレイヤーアベイラビリティに公開するには、プライバシーポリシー・ウルを追加する必要があります。
プライバシー・ポリシーを追加するには、一般にアクセス可能なオンライン・ドキュメントまたは独自のウェブ・ページを見つける必要があります:
Q7 現在、どのようなアプリケーションやアクションがアクセスに対応していますか?
https://www.jijyun.cn/apps/。