以编程方式使用文档

cloro 提供工具用于监控 AI 平台和搜索引擎,并提取结构化数据。

设置

安装 langchain-cloro package:

pip install -U langchain-cloro

从以下位置获取您的 API 密钥: cloro 仪表板 并将其设置为环境变量:

os.environ["CLORO_API_KEY"] = "your-api-key"

Google 搜索爬虫

从 Google 搜索结果中提取结构化数据,包括自然搜索结果、"人们还在问"问题、相关搜索以及可选的 AI 概览。

from langchain_cloro import CloroGoogleSearch

tool = CloroGoogleSearch()
result = tool.invoke({"query": "best laptops for programming"})

包含 AI 概览

result = tool.invoke({
    "query": "best laptops for programming",
    "include_aioverview": True,
    "aioverview_markdown": True
})

自定义参数

result = tool.invoke({
    "query": "python tutorials",
    "country": "GB",  # UK results
    "device": "mobile",  # or "desktop"
    "pages": 3  # Number of pages (1-20)
})

ChatGPT 爬虫

从 ChatGPT 中提取结构化数据,包括购物卡片、实体提取,以及用于监控产品、价格和品牌提及的高级功能。

from langchain_cloro import CloroChatGPT

tool = CloroChatGPT()
result = tool.invoke({"prompt": "What are the best sneakers under $100?"})

包含原始响应和搜索查询

result = tool.invoke({
    "prompt": "best running shoes 2024",
    "include_raw_response": True,
    "include_search_queries": True,
    "country": "US"
})

Gemini 爬虫

从 Google 的 Gemini AI 中提取结构化数据,包括来源引用和置信度。

from langchain_cloro import CloroGemini

tool = CloroGemini()
result = tool.invoke({"prompt": "Explain quantum entanglement"})

包含 Markdown 响应

result = tool.invoke({
    "prompt": "What is machine learning?",
    "include_markdown": True,
    "country": "US"
})

Perplexity 爬虫

从 Perplexity AI 中提取全面的结构化数据,包括实时网络来源、购物产品、媒体内容和旅游信息。

from langchain_cloro import CloroPerplexity

tool = CloroPerplexity()
result = tool.invoke({"prompt": "Best hotels in San Francisco"})

Grok 爬虫

从 Grok 中提取全面的结构化数据,包括实时网络来源和增强的来源元数据,包括预览文本、创建者详情和图像。

from langchain_cloro import CloroGrok

tool = CloroGrok()
result = tool.invoke({"prompt": "Latest news about AI"})

Copilot 爬虫

从 Microsoft Copilot 中提取结构化数据,包括来源引用。

from langchain_cloro import CloroCopilot

tool = CloroCopilot()
result = tool.invoke({"prompt": "What is the capital of France?"})

与代理一起使用

所有 cloro 工具都可以与 LangChain 代理一起使用:

from langchain.agents import AgentExecutor, create_tool_calling_agent
from langchain_core.prompts import ChatPromptTemplate
from langchain_openai import ChatOpenAI
from langchain_cloro import CloroGoogleSearch, CloroChatGPT

# Initialize tools
search_tool = CloroGoogleSearch()
chatgpt_tool = CloroChatGPT()
tools = [search_tool, chatgpt_tool]

# Create agent
llm = ChatOpenAI(model="gpt-4", temperature=0)
prompt = ChatPromptTemplate.from_messages([
    ("system", "You are a helpful assistant"),
    ("human", "{input}"),
    ("placeholder", "{agent_scratchpad}"),
])
agent = create_tool_calling_agent(llm, tools, prompt)
agent_executor = AgentExecutor(agent=agent, tools=tools, verbose=True)

# Run agent
result = agent_executor.invoke({"input": "Search for information about AI trends and summarize what you find"})

响应格式

所有 cloro 工具返回 JSON 格式的响应,包含结构化数据:

result = tool.invoke({"query": "python programming"})
data = json.loads(result)

# Access structured results
if "result" in data:
    if "organicResults" in data["result"]:
        for item in data["result"]["organicResults"]:
            print(f"{item['title']}: {item['link']}")

API 参考

  • - **CloroGoogleSearch**:Google 搜索,支持 AI 概览
  • - **CloroChatGPT**:ChatGPT 监控,包含购物卡片
  • - **CloroGemini**:Google Gemini AI,包含引用
  • - **CloroPerplexity**:Perplexity AI,包含来源和媒体
  • - **CloroGrok**:Grok,包含增强元数据
  • - **CloroCopilot**:Microsoft Copilot 监控

更多详情,请访问 cloro 文档.