【大语言模型|ChatGPT】搭建「英文案例翻译/分析机器人」实践
本章详细剥析如何搭建「自定义知识库的聊天机器人」。
机器人基本原理:
将现有资料喂给AI,让它用来回答问题或给出延伸建议等。

操作步骤:S1. 导入Github 数据(导入几份流行营销案例,且案例都是英文)git clone https://github.com/Airbangs/Operation-management-case-baseS2. 安装依赖库pip3 install gpt-index
pip3 install langchain
pip3 install transformers
缺啥补啥S3. 编写脚本
num_outputs :设置最大的输出 token 数,若想回答问题的字数越多就设置越大。
Temperature:控制模型生成结果的随机性。温度越低,结果越确定,但也会越平凡或无趣。若要出人意料的回答,则将该参数调高一些。若想基于事实,如数据提取、FAQ 场景等,调成 0最合适。#!/usr/bin/env python3
from gpt_index import SimpleDirectoryReader, GPTListIndex, readers, GPTSimpleVectorIndex, LLMPredictor, PromptHelper,ServiceContext
from langchain import OpenAI
import sys
import os
from IPython.display import Markdown, display
import PyPDF2
# 设置 OpenAI API Key
os.environ["OPENAI_API_KEY"] = "你的Open_Api_Key"
def main():
# set maximum input size
max_input_size = 4096
# set number of output tokens
num_outputs = 4000
# set maximum chunk overlap
max_chunk_overlap = 20
# set chunk size limit
chunk_size_limit = 600
# define LLM
llm_predictor = LLMPredictor(llm=OpenAI(temperature=0.5, model_name="text-davinci-003", max_tokens=num_outputs))
prompt_helper = PromptHelper(max_input_size, num_outputs, max_chunk_overlap, chunk_size_limit=chunk_size_limit)
documents = SimpleDirectoryReader('你的文件目录/files').load_data()
service_context = ServiceContext.from_defaults(llm_predictor=llm_predictor, prompt_helper=prompt_helper)
index = GPTSimpleVectorIndex.from_documents(
documents, service_context=service_context
)
index.save_to_disk('index.json')
index = GPTSimpleVectorIndex.load_from_disk('index.json')
while True:
query = input("小朋友你是不是有很多问号,提出来让我帮你吧:")
response = index.query(query, response_mode="compact")
print(f"Response: <b>{response.response}</b>")
if __name__ == '__main__':
main()S4. 用中文总结英文案例内容

S5. 提问

S6. 翻译

如何生成自己的OPENAI_API_KEY
登录地址 => https://platform.openai.com/account/api-keys
[Tips] 若使用付费的GPT4则更佳

代码执行报错
ModuleNotFoundError: No module named 'langchain.utilities'
报错可能原因:python版本低于3.8
解决:升级到3.8 (我使用的是3.9.4)
三体星系发现行星,位于恒星宜居带内,三体人或许真的存在
在大众对宇宙最关心的几个问题中,最让人兴奋的话题无疑是“外星生命”。刘慈欣在他的巨作《三体》里就详细描述了一个来自三体星的文明,这个文明所在的行星拥有三颗恒星,它们互相纠缠做着无规则运动,在极寒或极热的交织下,三体人进化出了“脱水”功能以暂避不适合生存的乱纪元。我要新鲜事2023-10-27 18:42:400001从科学角度看 硅基生命是否会存在(生命构成)
硅基生命理论上存在但地球上没有存在。硅基生命这个概念自诞生以来就引起了人们的极大兴趣。硅基生命是指在生命体系中,以硅而不是碳为主要元素来构成生物体的生命形式。这种生命形式的概念最初是由英国化学家詹姆斯·爱默生·史密斯提出的。化学性质差异我要新鲜事2024-01-30 21:15:590000距地20光年外的宇宙区域,科学家发现适宜人类移居的第二颗地球
从当前世界人口统计来看,地球人口已超过70亿之多的关口,对地球而言明显是一个十分庞大的人口基数,也是近十几年来人口大幅度增加的一种状况体现,然后伴随而来的便是,对于地球资源的利用而言,人口数量一旦过高,则彻底使地球中许多能源都开始加速消耗。我要新鲜事2023-05-14 20:17:280000作为太阳系的“行星之王”木星未来会不会变成恒星(挑食的木星)
“失败的恒星”是谁呢,为什么会这样称呼呢?答案就是木星,原因就是它没有成为像太阳一样可以核聚变可以燃烧的星球。那么木星可以引燃可以成为像太阳一样的恒星么?答案是肯定的,我们想实现也比较容易,就是给木星增加质量。想象和现实总是有差距的,真的想要实现这个想法,根本是不可能的,木星是不可能成为一颗恒星的!我要新鲜事2023-05-14 17:17:260000印度如此之多良田 为何还有很多人饥饿(印度粮食)
印度人种植粮食的方式错误,并且农业的政策错误。在当前人口能够和我国相比的国家就是印度。因为印度的人口和我国相比几乎不会少太多,虽然印度一直都把自己想象成一个强大的国家,但是印度却是在联合国相关组织的评分当中,处于重度饥饿的范围,也就是说在印度有着很多人根本吃不饱饭,印度对于此事进行了不少的狡辩,但是实际上印度的粮食产量平均下来却无法让人都能吃饱饭。更不要说还有很多人的粮食产量会更低。粮食产量我要新鲜事2023-08-15 20:36:490001