🎉

DifyのAPIをPythonで呼び出してみる

2024/09/16に公開

Difyを学習される方向け:Pythonで生成AIアプリ作成ツール「Dify」 のAPIを利用する方法

Difyは、AIを使ったアプリを簡単に作れるプラットフォームです。この記事では、Pythonというプログラミング言語を使って、DifyのAPIを利用して業務を効率的に進める方法を紹介しています。APIとは、アプリ同士がデータをやり取りする仕組みのことです。具体的に、DifyのAPIをどうやって使うか、その手順とサンプルコードが説明されています。これを使うと、AIを活用したアプリの作成がよりスムーズにできるようになります。

目次

  1. Difyとは?
  2. Dify APIキーの取得
  3. Pythonのサンプルコード

Difyとは?

Difyは、AIを使ったアシスタントやエージェントを簡単に作れる新しいプラットフォームです。大規模な言語モデル(LLM)を使って、企業や開発者が手軽にAIアプリを作り、運用できる環境を提供しています。また、DifyのAPIを使えば、仕事の自動化や効率化をサポートする機能も利用できます。もっと詳しい情報は、Difyの公式サイトで確認できます。
今回は下記の記事の社内業務を回答するチャットボットのアプリケーションを利用しています。


Dify APIキーの取得

まず、Difyの公式サイトからアカウントを作成し、APIキーを取得します。APIキーは、Difyの機能にアクセスするために必要な認証情報です。

まずはホームページにアクセスします。

適当なチャットアプリを作成します。

APIのエンドポイントを取得します

APIキーを取得します


Pythonのソースコード

次に、Pythonをインストールしていない場合は、公式サイトからインストールします。requestsライブラリを使用するため、次のコマンドを実行してインストールしてください。

import requests
from typing import Dict

# Dify APIの認証キー
API_KEY = 'APIキー'  # 取得したAPIキーに置き換えてください
# Dify APIのベースURL
BASE_URL = 'APIエンドポイント'

def get_dify_response(query: str, user: str) -> str:
    """
    Dify APIにリクエストを送信し、応答を取得する関数

    :param query: ユーザーの質問
    :param user: ユーザー識別子
    :return: APIからの応答テキスト
    """
    headers = {
        'Authorization': f'Bearer {API_KEY}',
        'Content-Type': 'application/json'
    }
    
    data: Dict[str, any] = {
        "inputs": {},
        "query": query,
        "response_mode": "blocking",
        "user": user,
    }
    
    response = requests.post(BASE_URL, headers=headers, json=data)
    response.raise_for_status()
    
    return response.json()['answer']

if __name__ == "__main__":
    query = "こんにちは!"
    user = "user1"  # 適当なユーザー名
    
    try:
        answer = get_dify_response(query, user)
        print(answer)
    except requests.RequestException as e:
        print(f"エラーが発生しました: {e}")

Discussion