Visual AgentのNotebook上での呼び出しについて

フロー上で作成したVisual AgentをNotebook上でpythonで呼び出して処理の結果をnotebook上で出力させることは可能でしょうか?
例えば、dataset lookupのツールを使えるエージェントを構築し、notebookで作成したエージェントにクエリを渡し結果を出力するというイメージです。
Best Answer
-
Tsuyoshi Dataiker, PartnerAdmin, Dataiku DSS Core Designer, Dataiku DSS ML Practitioner, Dataiku DSS Adv Designer, Registered Posts: 234 Dataiker
@Koji さん、投稿していただいたメッセージに気づかず失礼しました🙇♂️(なぜか、頂いたメッセージがディスカッションのリストに表示されず、通知も届かず・・)。以下回答させていただきます。
はい、Visual AgentをPythonコードから呼び出すことは可能です。エージェント自体は通常の
オブジェクトとして取得できるのですが、エージェントのIDを事前に確認する必要があります。以下のような実装で、エージェントを呼び出すことができましたので、参考までに共有いたします。
import dataiku #始めに利用したいビジュアルエージェントのIDを取得しておく必要あり agent_name = "ローン情報問合せ エージェント" project_id = "FINAIADVISOR" agent_list = dataiku.api_client().get_project(project_id).list_llms(purpose='GENERIC_COMPLETION', as_type='listitems') # 追記: 'friendlyName' というのは、リストに入っているディクショナリーのキーであるため、そのままの値で利用してください! agent_model = [model for model in agent_list if model['friendlyName'].endswith(agent_name)] agent_id = agent_model[0].id #あとは、通常のLLM Mesh オブジェクトとして利用可能 v_agent = dataiku.api_client().get_project(project_id).get_llm(agent_id) response = v_agent.new_completion().with_message("お客様ID:79478のローン申請について、承認状況を教えてください?", role='user').execute() print(response.text)
Answers
-
ありがとうございます。追加で質問なのですが。agent_name,model["friendlyName"]はフロー上のどの部分にあたりますでしょうか?
get_project()の引数はproject_idと認識しています。
-
Tsuyoshi Dataiker, PartnerAdmin, Dataiku DSS Core Designer, Dataiku DSS ML Practitioner, Dataiku DSS Adv Designer, Registered Posts: 234 Dataiker
@Koji agent_name(ビジュアルエージェントの名前)は、フロー上では添付画像1のように表示されます。
フロー上ではなくても、添付画像2のように「Models & Agents」メニューからもご確認いただけます。
また、"friendlyName" は返ってきたリストに入っているディクショナリーのキーですので、そのままの値でご利用ください。「get_project()の引数はproject_id」というのはご認識の通りです。
上記、ご質問をいただいた点がわかりやすいように、元のコードを修正しておきました。よろしくお願いいたします。
-
追加で質問になってしまうのですが、添付されたコードはどのLLMにも適用できるものなのでしょうか?OpenAIからGeminiに変更したところエラーが出るようになってしまいました
Processing failed, caused by: RequestFailedException: java.io.IOException: Failed to stream LLM completion, caused by: IOException: Request failed: Code: 400 msg= 400 Bad Request
-
Tsuyoshi Dataiker, PartnerAdmin, Dataiku DSS Core Designer, Dataiku DSS ML Practitioner, Dataiku DSS Adv Designer, Registered Posts: 234 Dataiker
@Koji LLM Mesh API経由で、標準のLLMコネクション(Vertex AI - Gemini)を利用した場合に、エラーが発生するということですね。そうしますと、設定内容やログの詳細をもう少し確認する必要があると考えられます。
今回は具体的なエラーが発生している状況ですので、Dataikuサポートにお問合せいただくことが可能と考えております。お手数ですが、お客様・パートナー様に共有されているガイドラインに沿って、具体的な実装内容とエラー情報を添えていただきまして、技術サポートへのお問合せを頂けますと幸いです。
-
-
サポートに確認したところ現状、Vertex AI(Gemini)で設定したエージェントの呼び出しがコードできないのは不具合のようでした。将来的なDSSバージョンアップで修正対応するそうです