啊经常刷抖音的同学都知道langchain是个很牛逼的 库,他支持ai串联起来提问,这使得ai工作流可以行得通,从而让好多低质量的工作都可以下岗。
然后我最近学习了下langchain,在langchain里有一个llmrequestchain可以用来像chatgpt4里的webpilot插件那样访问第三方网页,比如我想让他帮我找到最好的爬虫库是什么,他会搜索各种搜索引擎 然后告诉我答案。
然后我们可以定义一段代码:
from langchain.chat_models import openai
from langchain.prompts import PromptTemplate
from langchain.llms import OpenAI
from langchain.chains import LLMRequestsChain, LLMChain
# 和OpenAI的GPT 模型进行交互。
llm = OpenAI(model_name="gpt-4-1106-preview", temperature=0)
# 构造Prompt 模版
template = """使用中文回答我
在 >>> 和 <<< 之间是我给你的数据内容,内容是html内容,你可能需要一定的整理,你要根据这个并且结合'{query}'这个问题回答我。
{requests_result} <<<
Extracted:"""
prompt = PromptTemplate(
input_variables=["query","requests_result"],
template=template
)
# 利用LLMRequestsChain 访问Url
chain = LLMRequestsChain(llm_chain=LLMChain(llm=llm, prompt=prompt))
question = '''请你从我给你的数据里,帮我整理出标准化的数据,去掉不必要的html内容'''
inputs = {
"query":question,
"url": "http://quote.eastmoney.com/ztb/detail#type=ztgc"
}
#
# inputs = { "query": question, "url": "https://www.google.com/search?q=" + question.replace(" ", "+")}
#
response = chain(inputs)
print(response['output'])
经常刷我公众号的同学都知道,一般我给出来的代码肯定是不能用的,能用我还发出来干嘛?
这段代码的结果肯定是无法访问到数据的,因为这个llm chain用的是requests
底层用bs4解析dom。呵,该给langchain pull request了。
突然就理解gpt4插件webpilot官网给的api价格为啥这么高了,
这得动态实现一个兼容性很好的爬虫,好麻烦啊,搜了一圈社区也没大佬能开源一个,特奶奶的
我做这个的出发点就是想做一个简单的工作流,再也不想用官方的webpilot,因为贼难用。
啊,结果好麻烦啊~但是有ai的世界好好啊~各种固定下来的工作流可以随意使用 无敌啊!
最近还买了claude3 申请了api ,20M的数据量结合这个llmrequestschain就无敌了啊,但是最近看到了一个帖子讲embedding ai的时候一些经验,发现要对数据做很多事情,包括预处理页很重要,想起来我之前做了一个用ai来检测代码审计的时候结果不准确,我在想可能就是我的数据预处理没做好,因为那时候用的llama库,那个库底层对代码好像就他妈的text往ai里一丢,啥也不干,现在想想,可以ast标准化的格式,还有embedding模型也不一定要用openai官方的,可惜帖子找不到了
推特刷多了越发觉得ai强大,强的可怕啊,我都觉得用langchain实现蚂蚁网商银行的那种高效的规则更新处理 ,快速ai运营巴拉巴拉的事情完全没问题,总之:只要是可以工作流sop固定下来的流程,统统ai可以实现。
原文始发于微信公众号(xsser的博客):langchain的llmrequestschain
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论