Skip to main content
Stardog 是一个企业知识图谱平台,使组织能够统一、查询和分析其数据。
此集成包提供了用于与 Stardog Voicebox 交互的 langchain 工具和可运行对象,Stardog Voicebox 是一个自然语言回答代理,可从您的企业数据提供无幻觉的洞察。

概述

Stardog LangChain 集成包提供以下用于与 Stardog Voicebox 协作的工具:
  • VoiceboxAskTool - 提问并获得自然语言答案
  • VoiceboxGenerateQueryTool - 从自然语言生成 SPARQL 查询
  • VoiceboxSettingsTool - 检索 Voicebox 应用程序设置
所有工具都支持同步和异步执行模式,使其适用于各种应用程序架构。 有关完整详细信息,请参阅 GitHub 仓库

设置

安装

pip install langchain-stardog

先决条件

  • 一个 Stardog Cloud 账户
  • 一个已配置您数据的 Voicebox 应用程序
  • 一个 Voicebox API 令牌

获取您的 API 令牌

  1. 登录到 Stardog Cloud
  2. 点击您的个人资料图标并选择 管理 API 密钥
  3. 创建一个新应用程序并生成密钥。
  4. 复制 API 令牌并将其保管好。
  5. 有关更多详细信息,请参阅 Stardog Voicebox API 访问。

凭据

将您的 API 令牌设置为环境变量:
import getpass
import os

if not os.environ.get("SD_VOICEBOX_API_TOKEN"):
    os.environ["SD_VOICEBOX_API_TOKEN"] = getpass.getpass("Enter your Voicebox API token: ")
可选的环境变量:
os.environ["SD_VOICEBOX_CLIENT_ID"] = "my-app"  # Client identifier (default: VBX-LANGCHAIN)
os.environ["SD_CLOUD_ENDPOINT"] = "https://cloud.stardog.com/api"  # Custom endpoint (optional)

实例化和示例

VoiceboxAskTool

询问与使用您的 API 令牌配置的知识图谱相关的自然语言问题,并接收无幻觉的答案。
from langchain_stardog.voicebox import VoiceboxAskTool

# Tools automatically load credentials from environment variables
ask_tool = VoiceboxAskTool()

# Ask a question
result = ask_tool.invoke({"question": "What are all flights from San Francisco to New York?"})
print(result)
# Returns: Natural language answer

VoiceboxSettingsTool

检索 Voicebox 应用程序配置和元数据。
from langchain_stardog.voicebox import VoiceboxSettingsTool

settings_tool = VoiceboxSettingsTool()

# Get application settings
settings = settings_tool.invoke({})
print(settings)
# Returns: Configuration details like data sources, schema info, and capabilities

VoiceboxGenerateQueryTool

为自然语言问题生成 SPARQL 查询而不执行它们。
from langchain_stardog.voicebox import VoiceboxGenerateQueryTool

query_tool = VoiceboxGenerateQueryTool()

# Generate a SPARQL query
query = query_tool.invoke({"question": "Which flights are delayed by more than 30 minutes?"})
print(query)
# Returns: Generated SPARQL query without executing it
请参阅 示例 部分以了解使用这些工具和可运行对象的不同方法。

类参考

有关更多详细信息,请参阅 类参考 可用类:
  • VoiceboxAskTool - 提问并获得答案
  • VoiceboxSettingsTool - 检索应用程序设置
  • VoiceboxGenerateQueryTool - 生成 SPARQL 查询
  • VoiceboxAskRunnable - 用于提问自然语言问题的可运行对象
  • VoiceboxSettingsRunnable - 设置检索可运行对象
  • VoiceboxGenerateQueryRunnable - 查询生成可运行对象
  • VoiceboxClient - Voicebox API 的核心客户端

了解更多