【Azure Bot Service】在机器人服务中如何调用LLM来回答问题呢?

【Azure Bot Service】在机器人服务中如何调用LLM来回答问题呢?

问题描述

使用Azure Bot Service来部署机器人服务,如何把大模型嵌入其中呢?

比如在对话消息时候,能让大模型来提供回答?

image

问题解答

其实很简单,在Bot代码中添加大模型的调用就行。

以Python代码为例, 首先是准备好调用LLM的请求代码

## 示例中使用的是Azure OpenAI的模型

import requests # Azure OpenAI 客户端 def get_openai_answer(prompt): api_key = "your api key" endpoint = "your deployment endpoint, like: https://<your azure ai name>.openai.azure.com/openai/deployments/<LLM Name>/chat/completions?api-version=2025-01-01-preview" if not api_key or not endpoint: raise ValueError("请配置 Azure OpenAI 信息") headers = { "Content-Type": "application/json", "api-key": api_key } systemprompt = f"""" 您是一个有趣的聊天智能体,能愉快的和人类聊天""" data = { "messages": [ {"role": "system", "content": systemprompt}, {"role": "user", "content": prompt} ], "max_tokens": 5000, "temperature": 0.7 } response = requests.post(endpoint, headers=headers, json=data) response.raise_for_status() result = response.json() return result["choices"][0]["message"]["content"] # 示例用法 if __name__ == "__main__": prompt = "请介绍一下Azure OpenAI的主要功能。" print(get_openai_answer(prompt))

然后,在 EchoBot 的 on_message_activity 中调用OpenAI接口即可

# Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. from botbuilder.core import ActivityHandler, MessageFactory, TurnContext from botbuilder.schema import ChannelAccount from bots.call_openai import get_openai_answer class EchoBot(ActivityHandler): async def on_members_added_activity(self, members_added: [ChannelAccount], turn_context: TurnContext): for member in members_added: if member.id != turn_context.activity.recipient.id: await turn_context.send_activity("Hello and welcome, this is python code.") async def on_message_activity(self, turn_context: TurnContext): #call LLM API to get response llmresponse = get_openai_answer(turn_context.activity.text) return await turn_context.send_activity( MessageFactory.text(f"{llmresponse}") )

测试效果:

image

[完]

参考资料

发送和接收文本消息:https://docs.azure.cn/zh-cn/bot-service/bot-builder-howto-send-messages?view=azure-bot-service-4.0&tabs=python#send-a-typing-indicator


当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

Read more

Windows 使用 Codex 一直“正在思考”?一招解决 AI 工具代理问题(附一键切换脚本)

📚 目录 一、问题背景:Codex 一直“正在思考”却没有回答 二、第一步:查看本机代理端口 三、第二步:测试代理是否可用 四、第三步:给 Codex App 配置代理 五、让 Codex 代理配置生效 六、验证代理是否生效 七、如何取消代理配置 八、代理配置是否会影响国内软件 九、开发者推荐的代理配置方式 十、完整流程总结 一、问题背景 最近在 Windows 上使用 Codex 时遇到了一个很奇怪的问题: 输入问题后,界面一直显示: 正在思考 但是 没有任何回答。 最开始以为是: * Codex Bug * API Key

从0到1彻底掌握Trae:手把手带你实战开发AI Chatbot,提升开发效率的必备指南!

从0到1彻底掌握Trae:手把手带你实战开发AI Chatbot,提升开发效率的必备指南!

我正在参加Trae「超级体验官」创意实践征文,本文所使用的 Trae 免费下载链接:www.trae.ai/?utm_source… 暴富技巧 比特鹰作为国内领先的 AI+Web3 领域企业,团队充满年轻活力 ——95% 成员为 00 后,不仅技术氛围浓厚,还会为每位成员量身定制成长规划;在职业发展层面,公司前景广阔,提供餐饮补贴、租房补贴、年底奖金、股票期权及额外假期等多重福利,助力员工在 35 岁前实现财富自由 目前公司正招聘海外运营、前端、后端、智能合约、AI 开发、HR 等岗位,有意向者可加微信联系: ai_lianqq 前言 大家好,我是小Q,字节跳动近期推出了一款 AI IDE—— Trae,

手把手教你使用 YOLOv11/v8 算法 + PaddleOCR 算法完成车牌检测和车牌识别系统,AI智能体,毛玻璃系统,包括PaddlePaddle安装、数据集预处理、模型训练、AI大模型应用等

手把手教你使用 YOLOv11/v8 算法 + PaddleOCR 算法完成车牌检测和车牌识别系统,AI智能体,毛玻璃系统,包括PaddlePaddle安装、数据集预处理、模型训练、AI大模型应用等

前言 车牌识别系统是智能交通、安防监控等领域的关键技术,结合深度学习方法可提升识别模型准确率。本文基于YOLOv11/v8 目标检测模型与PaddleOCR 文本识别模型结合,实现端到端的车牌定位与字符识别。之前出过一期基于YOLOv11+CNN 车牌识别系统,链接如下: * 手把手教你完成基于YOLOv11+CNN车牌识别系统,Opencv车牌矫正,基于深度学习的车牌识别系统 由于 YOLOv11+CNN 车牌识别系统对倾斜角度较大和模糊的图片识别效果不佳、识别车牌单一、界面功能和样式单一等问题,本期将进行升级,本期整合了 YOLOv8/YOLOv11 + PaddleOCR + PySIde6 搭建一个车牌识别系统,有用户端系统+后台管理系统。技术路线如下: 1. 先利用YOLOv8/YOLOv11 算法定位车牌位置 2. 把检测到车牌输入到PaddleOCR 网络进行字符识别,整个过程一气呵成,只需训练 YOLOv8/YOLOv11 车牌检测模型即可,如果有时间也可以训练自己的 PaddleOCR 车牌字符识别模型。 3. 最后就是模型可视化与应用,

ToClaw他来了!融合OpenClaw、网页AI、远程功能,更适合真正的办公落地

ToClaw他来了!融合OpenClaw、网页AI、远程功能,更适合真正的办公落地

随着AI技术的不断发展,人们越来越期望AI能够融入真实工作流,提高办公效率。在此背景下,ToClaw应运而生,它融合了OpenClaw的开源Agent技术与远程功能,为办公场景带来了全新的解决方案。 为什么这波“龙虾热”,值得认真对比一次? 这一轮中文互联网对 “龙虾” 的热情,本质上不是大家突然爱上了某个新名词,而是越来越多人开始意识到:AI 不该只待在聊天框里,它应该开始进入真实工作流,帮人查资料、碰文件、跑任务、管设备。 OpenClaw 之所以火,一个重要原因就在于它把“个人 AI 助手”这件事做得很具象。根据其 GitHub 官方说明,它主打 personal open source AI assistant,推荐用户通过 openclaw onboard 这个 onboarding wizard 完成设置;而在 Windows 环境下,官方还特别建议通过 WSL2