統合する

Lisa Kudrow
リリース: 2025-03-09 12:34:13
オリジナル
286 人が閲覧しました

Pypiで利用可能になったLangchain-KùzuIntegrationパッケージは、Langchainの機能をKùzuのグラフデータベースにシームレスに接続します。この強力な組み合わせは、構造化されたグラフへの非構造化テキストの変換を簡素化し、データサイエンティスト、開発者、AI愛好家に同様に利益をもたらします。 その主要な機能と機能を調べてみましょう。

キー学習ポイント

このチュートリアルでは、

をカバーします
  • langchain-kùzuを使用して、非構造化テキストを構造化グラフデータベースに変換します
  • データを一致させるようにカスタムグラフスキーマ(ノードと関係)を定義します。
  • KùzuとLangchainのLLMツールを使用したグラフの作成、更新、およびクエリ。
  • LangchainのGraphQachainを介してグラフデータベースの自然言語クエリの採用。 動的スキーマの更新、カスタムLLMペアリング、Kùzu内の柔軟なデータインポートオプションなどの高度な機能を利用しています。
  • この記事は、データサイエンスブログの一部です
  • 目次:

クイックkùzuインストール Langchain-kùzuの利点

始めましょう:実用的な例

高度な特徴探査

開始(Revisited)
  • 結論
  • よくある質問
  • QuickKùzuインストール:
  • を使用してGoogle Colabにパッケージをインストールします
  • これには、Langchain、Kùzu、およびOpenai GPTモデルのサポートが含まれます。 他のLLMは、それぞれのLangchain互換性のあるパッケージを介して統合できます。
  • なぜlangchain-kùzu?
  • を選択するのか
構造化されていないテキストを操作し、グラフ表現を作成するのに最適なこのパッケージでは、次のことが提供されます。

柔軟なスキーマ:

エンティティと関係を簡単に定義および抽出します

テキストからグラフへの変換:
pip install -U langchain-kuzu langchain-openai langchain-experimental
ログイン後にコピー
ログイン後にコピー
LLMSを使用した生のテキストからの意味のあるグラフを構造

自然言語クエリ:

クエリグラフは、LangchainのGraphQachainを使用して直感的にグラフします 合理化された統合:

効率的なワークフローのためにLangchainのLLMをkùzuに接続します。

これを実用的な例で説明しましょう。
  • テキストからグラフを作成します 最初に、ローカルkùzuデータベースを作成して接続を確立します。
  • langchain-kùzulangchain-kùzuは、非構造化されたテキストからのグラフの作成と更新を簡素化し、LangchainのLLMチェーンを使用してText2Cypherパイプラインを介してクエリを照会します。
  • オブジェクトを作成することから始めます:
  • このサンプルテキストを検討してください:
  • 「ティムクックはAppleのCEOです。 Appleにはカリフォルニアに本社があります。」

pip install -U langchain-kuzu langchain-openai langchain-experimental
ログイン後にコピー
ログイン後にコピー

ステップ1:グラフスキーマを定義します

エンティティ(ノード)と関係を指定します:

import kuzu

db = kuzu.Database("test_db")
conn = kuzu.Connection(db)
ログイン後にコピー

ステップ2:テキストをグラフドキュメントに変換

テキストを構成するにはLLMGraphTransformerを使用してください:

from langchain_kuzu.graphs.kuzu_graph import KuzuGraph
graph = KuzuGraph(db, allow_dangerous_requests=True)
ログイン後にコピー

ステップ3:グラフドキュメントをkùzu

に追加します

ドキュメントをkùzu:

にロードします
text = "Tim Cook is the CEO of Apple. Apple has its headquarters in California."
ログイン後にコピー
# Define schema
allowed_nodes = ["Person", "Company", "Location"]
allowed_relationships = [
    ("Person", "IS_CEO_OF", "Company"),
    ("Company", "HAS_HEADQUARTERS_IN", "Location"),
]
ログイン後にコピー

注:エラーが発生した場合は、allow_dangerous_requests=TrueinKuzuGraphinを設定します グラフのクエリ

自然言語のクエリに

を使用:KuzuQAChain

from langchain_core.documents import Document
from langchain_experimental.graph_transformers import LLMGraphTransformer
from langchain_openai import ChatOpenAI

# Define the LLMGraphTransformer
llm_transformer = LLMGraphTransformer(
    llm=ChatOpenAI(model="gpt-4o-mini", temperature=0, api_key='OPENAI_API_KEY'),  # noqa: F821
    allowed_nodes=allowed_nodes,
    allowed_relationships=allowed_relationships,
)

documents = [Document(page_content=text)]
graph_documents = llm_transformer.convert_to_graph_documents(documents)
ログイン後にコピー

高度な機能

langchain-kùzuオファー:

  • ダイナミックスキーマの更新:グラフの更新時に自動スキーマ更新。
  • Custom LLMペアリング:Cypherの生成と回答生成に個別のLLMを使用します。
  • 包括的なグラフ検査:
  • ノード、関係、およびスキーマを簡単に検査します。
  • Kùzuの主な機能には、Cypherクエリサポート、組み込みアーキテクチャ、柔軟なデータインポートオプションが含まれます。 詳細については、Kùzuのドキュメントを参照してください

開始(Revisited)

インストール グラフスキーマを定義します グラフの作成とクエリのために、LangchainのLLMSを使用します。 その他の例については、Pypiページを参照してください

  1. 結論langchain-kuzu
  2. Langchain-Kùzu統合により、構造化されていないデータ処理が合理化され、効率的なテキストからグラフへの変換と自然言語のクエリが可能になります。 これにより、ユーザーはグラフデータから貴重な洞察を導き出すことができます。
  3. よくある質問

q1:a:

を使用する方法。 python 3.7。

が必要です

Q2:サポートされているLLMS? ​​a:OpenaiのGPTモデル、およびLangchainサポートを介して他のモデル。

q3:カスタムスキーマ?

​​a:はい、ノードと関係を定義します。 langchain-kuzuQ4:スキーマが更新されていませんか?a:スキーマは自動的に更新されます。必要に応じて手動でpip install langchain-kuzuを呼び出します。

Q5:CypherとAnswer GenerationのLLMを分離しますか?

Q6:サポートされているデータインポートフォーマット?

A:CSV、JSON、およびリレーショナルデータベース。 (注:画像は、元の画像形式と場所を維持するプロンプトが指定されたものとして含まれていません。画像プレースホルダーは、入力のままです。

以上が統合するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート