AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


如何做一个自己的AI客服?
发布日期:2024-05-02 15:03:08 浏览次数: 2187


一,前言:

在上一讲里面,我通过《AI进阶指南第一课,什么是AI进阶?》主要阐述了学习AI进阶的必要性和面临的问题。

首先,是提出了学习AI进阶的原因,包括可以定制个性化的AI服务,如新闻摘要、健康追踪等,这些服务能够更好地满足个人需求。

其次,分析了当前AI领域的就业形势,强调了熟练使用AI和创造AI工具的重要性。

最后指出,虽然学习AI进阶并不容易,但如果有合适的引导和帮助,这个过程会变得更加可行。文章鼓励读者关注并学习AI,以适应未来职场的需要。

而这一讲,我们直接开始我教大家如何创建一个自己的AI客服。

二,环境搭建。

1,了解OpenAI的API:

首先,您需要熟悉OpenAI的API。了解其功能、限制以及如何使用它来构建AI应用。

2,获取API密钥:

访问OpenAI的官方网站,注册一个帐户并获取API密钥。这将允许您访问OpenAI的服务。

3,选择编程语言和框架:

根据您的技能和项目需求,选择一个合适的编程语言和框架。OpenAI的API支持多种编程语言,包括Python、JavaScript、Java等。

4,设置开发环境:

创建一个新项目,并在其中安装所需的库和依赖项。对于Python,您可以使用pip安装OpenAI库:


pip install openai

三,编写代码:

因为我这里主要是讲述一下如何直接搭建一个自己的AI客服?

所以,有关基础部分的内容我就暂且略过,如有需要,可与我进行交流。

1,导入自己的API

如果您已经将API密钥保存在一个名为api_key.txt的文本文件中,并且希望从该文件中读取API密钥并将其导入到您的Python脚本中。

您可以按照以下步骤进行操作:

打开文件并读取内容:

使用Python的内置函数open()以读取模式('r')打开名为api_key.txt的文件。确保该文件存在于您的脚本所在的目录中,或者提供文件的完整路径。

使用read()方法读取文件中的内容,并将其存储在一个变量中。这将读取文件中的所有文本。

创建OpenAI客户端:

使用从文件中读取的API密钥创建一个OpenAI客户端实例。这将允许您使用OpenAI的API进行各种操作。


api_key = open('api_key.txt''r').read().strip()
client = openai.OpenAI(api_key=api_key)

2,上传客服知识文件

在OpenAI平台上,您可以将自定义的知识文件上传到您的账户中,以便创建一个更加精准和个性化的AI客服。

准备知识文件:

首先,您需要准备一个包含客服知识的文件。这个文件应该是纯文本格式,包含了您希望AI客服掌握的信息和知识。确保文件内容准确无误,因为AI客服的回答将基于这个文件提供的信息。

指定文件路径:

在代码中,您需要指定知识文件的路径。将"你的知识库文件"替换为实际的文件路径。

确保文件路径正确,否则open()函数将无法找到文件。

创建文件对象:

使用open()函数以二进制读取模式("rb")打开知识文件,并创建一个文件对象。这将允许Python读取文件内容并将其发送到OpenAI的服务器。


# 上传客服知识文件
file_knowledge_call_center = client.files.create(
    file=open("你的知识库文件""rb"),
    purpose="assistants"
)

3,自定义自己的智能体

在OpenAI平台上,您可以创建一个自定义的智能体,也称为助手,用于构建AI客服应用。以下是创建自定义智能体的详细步骤:

定义智能体属性:

设置智能体的名称、描述和指令。名称和描述用于标识智能体,指令则指导智能体如何行动。

选择模型:

选择一个合适的模型。OpenAI提供了多种不同规模的模型,您可以根据需要选择。例如,gpt-3.5-turbo-1106是一个强大的模型,适用于复杂的对话和任务。

配置工具:

定义智能体可以使用的工具。工具是智能体完成任务的辅助功能。例如,code_interpreter允许智能体执行代码,而retrieval允许智能体查询上传的知识文件。

关联知识文件:

如果您上传了知识文件,您需要将其ID包含在file_ids列表中,以便智能体能够访问和使用这些知识。创建智能体:调用client.beta.assistants.create()方法,传入上述定义的属性和配置,创建智能体。


assistant_call_center = client.beta.assistants.create(
    name="智能客服",
    description="24小时为您服务",
    instructions="作为智能客服,严格按照你的知识回答用户的问题,若不在知识范围内的,则委婉拒绝",
    model="gpt-3.5-turbo-1106",
    tools=[
        {
            # gpt提供的代码生成与执行工具
            "type""code_interpreter",
        },
        {
            # gpt提供的检索功能,若上传了知识文件,则可以查询,类似于智能客服/知识库
            "type""retrieval",
        }
    ],
    # 知识文件,通过File接口上传的
    file_ids=[file_knowledge_call_center.id]
)

4,传入客服信息


thread_zhangsan = client.beta.threads.create(
    # 小机的信息
    metadata={
        "姓名""小机",
        "年龄": 30,
        "性别""男"
    }
)

5,创建一个消息,用于问答


message = client.beta.threads.messages.create(
    thread_id=thread_zhangsan.id,
    # 类似ChatCompletion的message的role
    role="user",
    content="你们的商城叫什么名字",
)

6,创建咨询队列


run = client.beta.threads.runs.create(
    thread_id=thread_zhangsan.id,
    assistant_id=assistant_call_center.id,
)

7,等待询问结果


while run.status == "queued" or run.status == "in_progress":
    run = client.beta.threads.runs.retrieve(
        thread_id=thread_zhangsan.id,
        run_id=run.id,
    )
    time.sleep(0.5)

8,获取询问结果


messages = client.beta.threads.messages.list(
    thread_id=thread_zhangsan.id, order="asc", after=message.id
)

display(json.loads(messages.model_dump_json()))



基于此,就可以创建一个自己的AI智能商城客服了。


 如果你对AI大模型充满好奇,想要了解更多关于他的信息,不妨关注我的公众号,我们将为你带来更多的大模型相关知识。

我是小机AI模型。一个专注于输出 AI+ 提示词和AI + 大模型编程内容的学者,关我一起进步。


如果您也对AI感兴趣,欢迎关注下方订阅号,里面有很多好用的AI工具集合。




此外,如果您有AI方面的问题,或者有对AI其他方面感兴趣的地方,欢迎加我好友一起交流,我会送您一份领价值399元的AI资料,帮助您入门AI。



53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询