当前位置: 首页 > news >正文

自己给公司做网站该怎么做百度竞价

自己给公司做网站该怎么做,百度竞价,百度最新招聘信息,阿里云可以做电影网站吗大模型LLM 应用AI Agents框架,为我们提供了非常便利的自动化执行任务的能力。微信公众号(订阅号) 是非常适合落地各种AI Agents的场景,我们可以利用微信公众号提供的文本、图像、语音的输入,在自己服务器上部署一套API框架,把自己…

大模型LLM 应用+AI Agents框架,为我们提供了非常便利的自动化执行任务的能力。微信公众号(订阅号) 是非常适合落地各种AI Agents的场景,我们可以利用微信公众号提供的文本、图像、语音的输入,在自己服务器上部署一套API框架,把自己感兴趣的一些对话、图文、语音等能力的API封装为Agents。这里给大家介绍一个拆箱即用的微信公众号服务端框架 Flask+tencent代码库来实现,并且会利用一个简单的金融智能助理(Finance Agent)的例子来实现一个根据用户输入来查询实时股价,并且返回给微信公众号用户的功能,支持更加复杂定制的AI Agents业务逻辑。

img

一键部署图文回复的Demo

img

跳转

AI Agents API调用实现查询股价功能的Demo

img

跳转

2. 环境准备

开发一个微信公众号(订阅号)的自动回复和AI Agents需要下列准备,包括:

  • 2.1 服务器:可以提供80端口和公共IP的服务器,这样微信公众号后台就可以发送请求到 http://{ip_address}:80/wx 端口,然后你的服务端返回内容给公众号,给用户提供服务。
  • 2.2 python库 flask (提供web服务)
  • 2.3 python库 tencent (提供了三方的API包括封装好的微信服务端验证,文本请求,图像请求等等)。

安装环境可以执行下列命令

代码语言:txt

复制

pip install flask tencent

3. 拆箱即用部署

3.0 服务器上部署Flask+tencent服务端

微信开发平台上例子,第一次部署可能要花比较长时间,中间缺少debug信息需要尝试很多次。

https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Getting_Started_Guide.html

这里提供了封装好亲自测试一分钟可以成功跑通的基础类和Flask Server的执行脚本,复杂应用也可以在这个基础类上进行修改。从github上下载例子拆箱即用 main.py文件地址

地址:https://github.com/AI-Hub-Admin/tencent/blob/main/examples/wechat/main.py

代码语言:txt

复制

wget https://github.com/AI-Hub-Admin/tencent/blob/main/examples/wechat/main.py
python main.py

部署好服务之后,可以通过浏览器访问 http://127.0.0.1:80/wx_home 查看是否部署成功。如果可以看到Hello World的一个html页面就代表服务部署成功了。给微信提供验证的服务入口在 (http://127.0.0.1:80/wx)。

img

下一步就要在微信官方平台,验证你的服务器可以给公众号提供服务了。

需要保存好

\1. 你对外提供的URL: http://{your_ip_address}/wx (80端口从URL里省去)

\2. 一个验证用的token,例子代码中 token=“dummy”,需要填写在下一端的对应位置,你可以修改wechat_constants.py 文件中对应变量

3.1 注册微信公众号

详细的注册和开发流程参考微信公众号开发文档(https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Getting_Started_Guide.html),但是因为自己第一次部署很容易配置失败,这里给大家分享一些拆箱即用的可以直接上手跑的例子。

a.登录微信平台注册账号

官方网址 (https://mp.weixin.qq.com/) 个人开发者可以先选择订阅号,服务号和企业号都需要公司营业执照等材料。

img

b. 配置服务器设置

img

在导航栏选择 “设置与开发-基本配置”,在"服务器" 配置项选择修改配置。这里的对话框可以选择填写你的服务端信息。

URL:填写你对外暴露服务的地址 **http://{your_ip_address}/wx,**token:这里先填写 dummy (对应我们的 python例子,可以后续再修改)

最后保存。当你点击保存按钮的时候,微信服务端会给你的地址发一个 GET请求来验证你拥有服务器,这里如果验证失败了,可以看看python 后台的日志如下图中 (hashcode和signature是否一致).这里验证逻辑被封装到 tencent库的 WechatServerVeriAPI.static_api函数内,感兴趣可以查看 tencent.contrib.wechat.wechat_api 这个模块。保存后点击"启用"就可以从公众号上发消息验证了。

c. 关注公众号并发送文本图片消息

如果部署成功了,你发送文本消息,公众号回复 “hello”,如果你发送图片,公众号会把相同图片的mediaid 返回给你,达到回复用户相同图片效果。参考例子main.py文件中对基础文本回复 和 对图像回复,封装在了 WechatTextReplyBaseAPI.static_apiWechatImageReplyBaseAPI.static_api 这两个函数里。初次上手微信后台开发的开发者可以不用纠结于request的XML请求的格式细节,只用关注最核心的业务逻辑,获取用户输入,得到输出并返回给用户就好了。

img

3.2 常见错误

a. 系统发生错误,请稍后重试

因为填写配置错误导致 hash_code和signature计算不同,注意点:

\1. URL:不能带端口,一定是固定 服务器, 不能是 http://{your_ip_address}:80/wx 或者是 https://{your_ip_address}:443/wx,这样填写是不行的。

\2. token: 只能英文数字,不能有下划线,或者别的符号,这个很容易被忽略。必须为英文或数字,长度为3-32字符。 具体错误原因微信后台没有提供,我们可以从我们 python服务端日志来看出端倪。查看下列flask打印的日志,看看 hashcode 和 signature是否一致不一致就是哪里填错了。

img

4. 实现自己的金融助理(查询股价)

4.1 直接基于API来实现自动回复

可以参考代码库(https://github.com/AI-Hub-Admin/tencent)中 examples/tests/ 目录下的 main_finance_agent.py 例子。 微信公众号开发很多对 服务端request的输入输出格式都很复杂,为了简单上手,可以直接继承 WechatTextReplyBaseAPI 基础类,然后主要关心获取用户输入和返回给用户的核心业务逻辑就可以了。

这里金融智能助理为例,我们希望做一个可以查询股票价格的 AI Agents,我们只用自己实现核心业务逻辑就好。完整代码参考例子:

地址:https://github.com/AI-Hub-Admin/tencent/blob/main/examples/wechat/main_finance_agent.py

开发 WechatTextReplyFinanceAPI 类

这个 WechatTextReplyFinanceAPI 类继承 WechatTextReplyBaseAPI 基类,我们只用关系和修改入口静态方法 static_api(args, kwargs) 和 process(self, msg) 函数实现业务逻辑就好了。

这个类代码如下,实现了查询股票代码和组装自动回复的功能,我们使用了 FinanceAgent 库(包含了港股A股美国等api请求股价的函数,也支持Agents式的 tools自动化调用):

代码语言:txt

复制

class WechatTextReplyFinanceAPI(WechatTextReplyBaseAPI):@staticmethoddef static_api(args, kwargs):return WechatTextReplyFinanceAPI(None).api(args, kwargs)def process(self, msg):"""input: msg is a class of Wechat sent Msg, TextMsg, ImageMsg defined in receive.py file, you can also access other input information toUser = msg.FromUserNamefromUser = msg.ToUserNameoutput: str, the outer api method will process and wrap the Message Object"""input_text = msg.Content# parse user intent and query stock code from input text, This example, we will use 700 for tencent as example## implement_your_code_herestock_info_list = fa.api(symbol_list=['700'], market="HK")response_list = []for stock_info in stock_info_list:response= "%s,股价: %s, 最高价: %s, 最低价: %s, 数据更新时间: %s, 数据源: %s" % (stock_info["symbol"], stock_info["avg_price"], stock_info["high"], stock_info["low"], stock_info["update_time"], stock_info["source"])response_list.append(response)output_text = ";".join(response_list)       return output_text

需要重写的函数:

  • static_api是为了其他module 使用时候,不用实例化直接通过类Classname.static_api 来调用函数,注意这里要修改对应的类名字 (WechatTextReplyFinanceAPI)
  • process() 是包含具体的处理用户请求的逻辑:输入是一个 Msg对象(从微信请求的xml请求体转化来的),我们通过 msg.Content 获取用户输入的文本。返回的是你希望回传给用户的 字符串(str),比如腾讯(股票代码: 700)的股价总结。

在Flask对应的 /wx方法的Flask 函数主入口,把原先的 WechatTextReplyBaseAPI.static_api(args=[recMsg], kwargs={}) 替换为你实现的金融服务的函数就好了。WechatTextReplyFinanceAPI.static_api(args=[recMsg], kwargs={})。点击运行,再给你的公众号发送消息。如果成功你就可以看到查询的腾讯的最新股价了。

4.2 AI Agents智能体构建方法(把API封装为Tool供大模型调用)

AI智能体借助大模型LLM能力,执行流程简单描述就是:LLM 输入用户的prompt和可以执行的函数 tools (tools的概念就是把函数统一schema化让模型可以理解),返回 可以执行的函数和填充好的parameters参数。我们再根据LLM返回决策结果来直接执行这段函数代码。

4.2.1 构造智能体调用tools或者function_calls

首先,AI智能体借助大模型和prompt来给函数填充参数,输入给LLM的信息包括:

\1. 函数的schema(包括函数名,函数参数列表,每个参数取值类型,哪些是required参数等等),

\2. 用户自然语言输入的prompt。

大模型还是十分智能的,会把prompt中的相关文本抽取,结合自己知识来对参数改写 (比如 hongkong 改为HK再填充到函数里)对应的数据填充到函数的schema中。OpenAI的API 返回信息包含了function 和 对应参数 params。以openai的函数填充为例。

输入 prompt

代码语言:txt

复制

## You can fill the function with json format, the schema for the function is {'type': 'function', 'function': {'name': 'tencent_api_base', 'description': '', 'parameters': {'type': 'object', 'properties': {'arg1': {'type': 'string'}, 'arg2': {'type': 'string'}, 'arg3': {'type': 'string'}, 'arg4': {'type': 'string'}, 'arg5': {'type': 'string'}}, 'required': ['arg1', 'arg2', 'arg3']}}}, the user inputs include arg1=10, arg2=20, arg3=30, please output the executable function values in json format, with key as 'function'

输出prompt

代码语言:txt

复制

{"function": {"name": "tencent_api_base","parameters": {"arg1": "10","arg2": "20","arg3": "30","arg4": "","arg5": ""}}
}
4.2.2 把股价查询API构建为Agent 基于tencent库中提供的函数

API调用毕竟相当于人工写死的逻辑,只能接受固定输入好的参数格式。

借助大模型我们将API直接调用转化为基于大模型的AI Agent范式。

完整的金融智能助理 AI Agents执行例子可以参考这个Tutorial 的例子。

地址:https://github.com/AI-Hub-Admin/tencent/blob/main/examples/agents/run_finance_agent_api_tools.py

a. Tool的定义函数function和参数类型

定义AI Agents执行流程,首先需要告诉大模型任务有哪些 Tools(函数or工具) 可以选择,以及用户的输入是什么。以我们构造金融助理Agent为例子,需要大模型解析的一个函数function finance_stock_price_api,明确入参类型: symbol_list 是 list类型,market 市场是string 类型。

代码语言:txt

复制

def finance_stock_price_api(symbol_list: list, market: str):"""symbol_list is list of jsonmarket is str"""import FinanceAgent as fastock_info_json = fa.api(symbol_list=symbol_list, market=market)return stock_info_json

b. 函数function转换为LLM理解的Schema格式

利用tencent.utils.agent_utils 中的 function_to_schema 将函数转化为统一的OpenAI训练的 schema,这里不同大模型数据格式不同,具体schema需要和大模型训练时保持一致才能达到最佳效果。

代码语言:txt

复制

from tencent.utils.agent_utils import function_to_schematools = [finance_stock_price_api]
tool_schemas = [function_to_schema(tool) for tool in tools]

schema是一个json格式如下

代码语言:txt

复制

{"type": "function","function": {"name": "finance_stock_price_api","description": "symbol_list is list of json\n        market is str","parameters": {"type": "object","properties": {"symbol_list": {"type": "array"},"market": {"type": "string"}},"required": ["symbol_list","market"]}}
}

c. 输入给LLM进行Tools的决策

将可以执行的函数 Schema 和用户输入prompt 传给大模型让大模型产出需要执行函数,本质上是大模型预测了一下函数执行的最大概率并且输出最大概率的文本(相当于给函数填充了参数的槽位,得到了一个可以执行的 "字符串“)

代码语言:txt

复制

        client = OpenAI() response = client.chat.completions.create(model="gpt-4o-mini",messages=[{"role": "user", "content": instruction}],tools=tool_schemas,)

假设用户输入prompt是:希望查询腾讯(700) 和 快手(1024) 的港股股价

合并得到给LLM的输入为:

代码语言:txt

复制

You can fill the function with json format, the schema for the function is {'type': 'function', 'function': {'name': 'finance_stock_price_api', 'description': 'symbol_list is list of json\n        market is str', 'parameters': {'type': 'object', 'properties': {'symbol_list': {'type': 'array'}, 'market': {'type': 'string'}}, 'required': ['symbol_list', 'market']}}}, the inputs includes I am interested in Tencent(code:700) and Kuaishou (code:1024) stock price,please output the executable function values in json format, with key as 'function'

img

如果本地执行没有OpenAI的Key,可以尝试web端看看大模型产出结果如下,有的时候产出的Json也是有可能是错误的(大模型产出不准确有错误和幻觉),这个时候就需要业务后处理了。

代码语言:txt

复制

{"function": {"name": "finance_stock_price_api","description": "symbol_list is list of json\n        market is str","parameters": {"symbol_list": ["700","1024"],"market": "Hong Kong"}}
}

如何没有大模型调用环境可以把这个字符串输入然后让Agent 程序继续跑下去。

代码语言:txt

复制

[{"function":{"name":"finance_stock_price_api","parameters":{"symbol_list":["700","1024"],"market":"HK"}}}]

最后就是执行 execute_tool_call_from_json 来具体执行返回的函数和参数值,然后保存结果到 messages 里面,我们就根据用户自然语言处理的输入,决策调用股价查询API 并且获得了结果。

代码语言:txt

复制

def execute_tool_call_from_json(tool_call, tools_map):"""tool_call: json format of {'functions': {'name': 'tencent_api_base','parameters': {'arg1': '10','arg2': '20','arg3': '30','arg4': '','arg5': ''}}}"""name = tool_call["function"]["name"]parameters = tool_call["function"]["parameters"]# args = json.loads(tool_call.function.arguments)print(f"Assistant: {name}({parameters})")# call corresponding function with provided argumentsreturn tools_map[name](**parameters)
d. 小结

这样我们就把API调用重构为了一个 AI Agents调用的范式,可以看出几点区别:

\1. API调用的确定性强,缺点就是参数处理和解析定制化,都需要根据query的NLP技术理解来处理。

2.AI Agents 调用支持用户输入灵活性更强,但是输出准确性不够高。

从AI Agents 根据用户输入和备选Tools的Schema,决策可以执行函数的字符串返回流程中,执行哪个参数和执行哪个函数都是LLM根据概率模型来预测的一段可以执行代码。不用NLP解析槽位再填写到API里。但是缺点就是LLM产出的字符串可能有各种bug,需要后处理,比如json格式不对,参数填写错误等。

在这个Tutorial 我们把API封装为 tools 让LLM调用过程中,tencent包提供了API函数方便封装,以及 function_to_schema 和 execute_tool_call 的一些utils的函数方便调用。具体业务下Agents执行还要结合各自业务,来智能地来对用户提供相应服务。

那么,如何系统的去学习大模型LLM?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

作为一名热心肠的互联网老兵,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。

但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

所有资料 ⚡️ ,朋友们如果有需要全套 《LLM大模型入门+进阶学习资源包》,扫码获取~
在这里插入图片描述

篇幅有限,部分资料如下:

👉LLM大模型学习指南+路线汇总👈

💥大模型入门要点,扫盲必看!
在这里插入图片描述
💥既然要系统的学习大模型,那么学习路线是必不可少的,这份路线能帮助你快速梳理知识,形成自己的体系。
在这里插入图片描述

👉大模型入门实战训练👈

💥光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

👉国内企业大模型落地应用案例👈

💥《中国大模型落地应用案例集》 收录了52个优秀的大模型落地应用案例,这些案例覆盖了金融、医疗、教育、交通、制造等众多领域,无论是对于大模型技术的研究者,还是对于希望了解大模型技术在实际业务中如何应用的业内人士,都具有很高的参考价值。 (文末领取)
在这里插入图片描述
💥《2024大模型行业应用十大典范案例集》 汇集了文化、医药、IT、钢铁、航空、企业服务等行业在大模型应用领域的典范案例。

在这里插入图片描述

👉LLM大模型学习视频👈

💥观看零基础学习书籍和视频,看书籍和视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。 (文末领取)
在这里插入图片描述

👉640份大模型行业报告👈

💥包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
在这里插入图片描述

👉获取方式:

这份完整版的大模型 LLM 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓
在这里插入图片描述

http://www.khdw.cn/news/36309.html

相关文章:

  • 在淘宝上做网站靠谱吗信息推广平台有哪些
  • docker免费视频怎么样做seo
  • 小程序游戏开发公司网站优化公司哪个好
  • 全国网站建设公司有多少家百度搜索风云排行榜
  • 网站建设通讯设备中企动力上海做网站优化
  • 多个网站给一个网站推广24小时人工在线客服
  • 杭州企业做网站苏州百度推广开户
  • 成都网站制作创新互联专业网站推广软件
  • 色流网站怎么做卖友情链接的哪来那么多网站
  • 简单的个人网页制作八上数学优化设计答案
  • 太原网站模板嘉兴优化公司
  • 厦门站长优化工具微信推广链接怎么制作
  • 网站后台账户密码软文写作平台发稿
  • 做网站cnfgseo快速排名软件价格
  • 日照网站建设哪家好seo论坛站长交流
  • node mysql做动态网站今天的新闻发布会
  • 九江网站建设公司软件推广的渠道是哪里找的
  • 上海备案证查询网站查询系统想要网站推广页
  • wordpress仿制建设搜索引擎优化包括
  • 重庆旅游网页设计网站seo关键词优化
  • 沈阳网站制作哪家好百度关键词搜索排名多少钱
  • 网站开发第三方支付宁波seo高级方法
  • 有没有做php项目实战的网站自媒体培训
  • wordpress 绑定多个二级域名自动app优化官网
  • 网站建设策划 流程网站设计公司排行
  • 十大接单网站脚本外链平台
  • 网站模版idc台州网站建设方案推广
  • 电子商务网站建设前的分析技能培训
  • 做暧暧视频网站爱站网权重查询
  • 济南网站建设平台seo专员是什么职位