ChatGPT AI聊天机器人实践

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
实时计算 Flink 版,5000CU*H 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
简介: ChatGPT AI聊天机器人实践

背景

ChatGPT 时代,开发新的 AI 应用的门槛大大降低了,你无需要去研究机器学习,深度学习等等模型,还有去准备GPU硬件,再新的趋势下,伴随着 GPT-3、Stable Diffusion 这样预训练好的大型基础模型的出现,以及这些模型的能力通过开放 API 的形式提供出来,即使没有任何机器学习的理论知识,你只需要一两天时间,就能做出一个能解决实际问题的 AI 应用。

API

大型语言模型的接口其实非常简单,像 OpenAI 就只提供了 Complete 和 Embedding 两个接口,其中,Complete 可以让模型根据你的输入进行自动续写,Embedding 可以将你输入的文本转化成向量。

业务描述

以前实现聊天机器需要套模板。这个的缺点,就是每次的回答都一模一样。当然,我们可以设计多个模版轮换着表达相同的意思,但是最多也就是三四个模版,整体的体验还是相当呆板。

有了 GPT 这样的生成式的语言模型,我们就可以让 AI 自动根据我们的需求去写文案了。只要把我们的需求提给 Open AI 提供的 Completion 接口,他就会自动为我们写出这样一段文字。

ChatGPT 参数

Open AI 提供的 Completion 接口 ,参数列表:

  • engine,OpenAI 使用哪一个引擎,选择text-davinci-003
  • prompt,输入的提示语
  • max_tokens,调用生成的内容允许的最大 token 数量,token 是分词之后的一个字符序列里的一个单元。
  • n,AI 给你生成几条内容供你选择,在这样自动生成客服内容的场景里,我们当然设置成 1。
  • stop,模型输出的内容在遇到什么内容的时候就停下来。

实现


import logging
import openai
from telegram import Update
from telegram.ext import filters, MessageHandler, ApplicationBuilder, CommandHandler, ContextTypes

# 设置日志记录
logging.basicConfig(
    format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
    level=logging.INFO)

# 设置 OpenAI API key
openai.api_key = "你的Open AI Key"

# 定义函数,处理 "/start" 命令
async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):
    await context.bot.send_message(chat_id=update.effective_chat.id, text="我是一个机器人,请和我聊天吧!")

# 定义函数,使用 OpenAI 生成回复
async def generate_response(update: Update, context: ContextTypes.DEFAULT_TYPE):
    # 获取用户的消息
    message = update.message.text

    # 使用 OpenAI 生成回复
    response = openai.Completion.create(
        engine="text-davinci-003",
        prompt=f"{message}\n",
        max_tokens=128,
        n=1,
        stop=None,
        temperature=0.5,
    ).choices[0].text

    # 将回复发送给用户
    await context.bot.send_message(chat_id=update.effective_chat.id, text=response)

# 定义函数,处理未知命令
async def unknown(update: Update, context: ContextTypes.DEFAULT_TYPE):
    await context.bot.send_message(chat_id=update.effective_chat.id, text="抱歉,我不明白您的命令。")

if __name__ == '__main__':
    # 设置 Telegram 机器人
    application = ApplicationBuilder().token('你的Telegram Token').build()

    # 添加 "/start" 命令处理器
    start_handler = CommandHandler('start', start)
    application.add_handler(start_handler)

    # 添加消息处理器,使用 OpenAI 生成回复
    generate_response_handler = MessageHandler(filters.TEXT & (~filters.COMMAND), generate_response)
    application.add_handler(generate_response_handler)    

    # 添加未知命令处理器
    unknown_handler = MessageHandler(filters.COMMAND, unknown)
    application.add_handler(unknown_handler)

    # 启动机器人,并等待消息的到来
    application.run_polling()
相关实践学习
阿里巴巴智能语音交互技术与应用
智能语音交互,是基于语音识别、语音合成、自然语言理解等技术,为企业在多种实际应用场景下,赋予产品“能听、会说、懂你”式的智能人机交互体验。适用于多个应用场景中,包括智能问答、智能质检、法庭庭审实时记录、实时演讲字幕、访谈录音转写等。 本课程主要讲解智能语音相关技术,包括语音识别、人机交互、语音合成等。  
目录
相关文章
|
19天前
|
人工智能 Serverless
AI 大模型助力客户对话分析 ——实践操作
参与《AI大模型助力客户对话分析》项目,基于阿里云社区操作路书,从架构设计到部署测试,逐步学习并应用大模型进行AI质检。过程中虽有控制台跳转等小挑战,但整体体验流畅,展示了AI技术的便捷与魅力,以及阿里云平台的先进性和社区支持。最终实现的AI质检功能,能够有效提升企业客户服务质量与效率。
45 0
|
14天前
|
存储 人工智能 弹性计算
基于《文档智能 & RAG让AI大模型更懂业务》解决方案实践体验后的想法
通过实践《文档智能 & RAG让AI大模型更懂业务》实验,掌握了构建强大LLM知识库的方法,处理企业级文档问答需求。部署文档和引导充分,但需增加资源选型指导。文档智能与RAG结合提升了文档利用效率,但在答案质量和内容精确度上有提升空间。解决方案适用于法律文档查阅、技术支持等场景,但需加强数据安全和隐私保护。建议增加基于容量需求的资源配置指导。
68 4
|
12天前
|
人工智能 JavaScript 前端开发
利用 AI 进行代码生成:GitHub Copilot 的实践与反思
【10月更文挑战第23天】本文探讨了GitHub Copilot,一个由微软和OpenAI合作推出的AI代码生成工具,其核心功能包括智能代码补全、多语言支持、上下文感知和持续学习。文章介绍了Copilot在加速开发流程、学习新语言、提高代码质量和减少重复工作等方面的应用,并反思了AI在代码生成中的代码所有权、安全性和技能发展等问题。最后,文章提供了实施Copilot的最佳实践,强调了在使用AI工具时保持对代码的控制和理解的重要性。
|
16天前
|
人工智能
精通歌词结构技巧:写歌词的方法与实践,妙笔生词AI智能写歌词软件
歌词创作是音乐的灵魂,掌握其结构技巧至关重要。开头需迅速吸引听众,主体部分需结构清晰、情感丰富,结尾则要余韵悠长。无论是叙事还是抒情,妙笔生词智能写歌词软件都能助你一臂之力,提供AI智能创作、优化及解析等多功能支持,助你轻松驾驭歌词创作。
|
16天前
|
人工智能 资源调度 数据可视化
【AI应用落地实战】智能文档处理本地部署——可视化文档解析前端TextIn ParseX实践
2024长沙·中国1024程序员节以“智能应用新生态”为主题,吸引了众多技术大咖。合合信息展示了“智能文档处理百宝箱”的三大工具:可视化文档解析前端TextIn ParseX、向量化acge-embedding模型和文档解析测评工具markdown_tester,助力智能文档处理与知识管理。
|
22天前
|
机器学习/深度学习 人工智能 自然语言处理
探索AI在软件测试中的创新应用与实践###
本文旨在探讨人工智能(AI)技术如何革新软件测试领域,提升测试效率、质量与覆盖范围。通过深入分析AI驱动的自动化测试工具、智能化缺陷预测模型及持续集成/持续部署(CI/CD)流程优化等关键方面,本研究揭示了AI技术在解决传统软件测试痛点中的潜力与价值。文章首先概述了软件测试的重要性和当前面临的挑战,随后详细介绍了AI技术在测试用例生成、执行、结果分析及维护中的应用实例,并展望了未来AI与软件测试深度融合的趋势,强调了技术伦理与质量控制的重要性。本文为软件开发与测试团队提供了关于如何有效利用AI技术提升测试效能的实践指南。 ###
|
24天前
|
人工智能
阅读了《文档智能 & RAG让AI大模型更懂业务》的解决方案后对解决方案的实践原理的理解
阅读《文档智能 & RAG让AI大模型更懂业务》后,我对文档智能处理与RAG技术结合的实践原理有了清晰理解。部署过程中,文档帮助详尽,但建议增加常见错误处理指南。体验LLM知识库后,模型在处理业务文档时效率和准确性显著提升,但在知识库自动化管理和文档适应能力方面仍有改进空间。解决方案适用于多种业务场景,但在特定场景下的集成和定制化方面仍需提升。
|
27天前
|
机器学习/深度学习 人工智能 自动驾驶
探索AI未来:从理论到实践
【10月更文挑战第9天】探索AI未来:从理论到实践
33 2
|
27天前
|
机器学习/深度学习 人工智能 自然语言处理
探索AI的无限可能:从理论到实践
【10月更文挑战第9天】在这篇文章中,我们将深入探讨人工智能(AI)的世界,从基本概念到实际应用,再到未来发展趋势。我们将通过实例和代码示例,揭示AI如何改变我们的生活和工作方式。无论你是AI领域的新手,还是有经验的开发者,这篇文章都将为你提供有价值的信息和启示。让我们一起探索AI的无限可能吧!
|
23天前
|
人工智能 API 数据安全/隐私保护
[大语言模型-工程实践] 手把手教你-基于Ollama搭建本地个人智能AI助理
[大语言模型-工程实践] 手把手教你-基于Ollama搭建本地个人智能AI助理
88 0
下一篇
无影云桌面