ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

腾讯AI转向背后:大模型应用开发与RAG/Agent工程实践

腾讯AI转向背后:大模型应用开发与RAG/Agent工程实践 1. 腾讯AI战略转向从“观望”到“下场”1.1 为什么说腾讯AI此前在“观望”过去两年国内大模型赛道经历了多轮洗牌。从通用大模型的参数竞赛到行业大模型的垂直落地再到 AI Agent、多模态、AI 编程等应用层的爆发各家厂商都在快速卡位。相比之下腾讯在 AI 大模型上的节奏一直被认为偏“稳”甚至有些“观望”的味道。这种“观望”并不是消极而是腾讯一贯的产品哲学先想清楚场景再决定技术投入。游戏、社交、广告、金融科技、云服务腾讯的业务线非常多AI 大模型不能只做一个“炫技”的 demo而是要能真正嵌入具体业务产生可量化的价值。所以在早期我们看到腾讯更多是在内部打磨混元大模型用自家业务做“试验田”而不是急于对外发布规模惊人的参数数字。但从 2024 年下半年开始这种局面明显改变了。腾讯混元在多个方向上的迭代节奏加快腾讯云也陆续开放了更多大模型相关能力。与此同时腾讯在 AI Agent、AI 编程助手、智能体平台等方向的动作明显变多。这意味着腾讯正在从“内部验证”走向“全面输出”从“观望”转向“下场”。对于开发者来说这个转变有三个直接信号大模型能力不再是遥远的 PPT而是可以通过 API、SDK 接入到真实项目。AI 应用开发的底层设施模型、计算、存储、安全正在被云厂商补齐。Agent、RAG、多模态等 AI 工程化方向开始成为项目落地的核心技能。这篇文章就从技术视角出发梳理腾讯 AI 转向后的几个关键技术方向以及作为开发者我们如何跟上这波变化。1.2 腾讯AI转向后的技术版图腾讯的 AI 布局可以分成三层第一层是模型底座。以腾讯混元大模型为核心覆盖自然语言处理、多模态理解、文生图、文生视频等能力。模型通过持续迭代逐步在中文理解、逻辑推理、指令跟随等维度上缩小与头部模型的差距。第二层是云与基础设施。腾讯云将大模型能力以 API 形式开放同时提供 GPU 计算、向量数据库、数据标注、模型微调等配套服务。对于企业用户来说真正吸引人的不是模型本身而是“模型 云服务”的组合。第三层是应用与生态。包括 AI 代码助手、智能体开发平台、企业知识库问答、AI 客服、内容生成工具等。这些产品直接面向业务场景是把大模型能力变成实际生产力的关键一环。这三层结构对开发者意味着什么呢简单来说如果你之前觉得大模型离业务太远现在腾讯在做的事情就是把“模型底座”和“业务应用”之间的通路铺好。1.3 开发者为什么要关注这次战略转向你可能不是腾讯云的用户也可能不用混元模型但腾讯 AI 战略转向对整个行业有风向标意义。第一它说明大模型竞争已经从“卷参数”进入“卷落地”阶段。谁能更快把模型变成好用的 API、稳定的服务、可维护的系统谁就能赢得开发者。腾讯的加入意味着 AI 应用开发的基础设施会更完善开发者的选择也更多。第二它说明 AI Agent 和智能体正在成为主流的应用形态。腾讯在做智能体平台本质上是在帮开发者降低构建 AI 应用的门槛。过去你要从模型训练开始现在你只需要关注业务逻辑、数据流和工具编排。第三它说明企业级 AI 应用需要的不是单一模型而是一整套工程能力RAG、向量检索、模型评估、安全过滤、成本控制。这些能力正是开发者在未来几年需要重点积累的。接下来我会从应用开发的角度拆解“腾讯 AI 不再观望”之后开发者实际可以抓住的几个方向。2. AI 应用开发的新范式从 Prompt 到大模型工程2.1 大模型应用开发的核心链路先说结论现在的 AI 应用开发本质上是在“模型能力”和“业务场景”之间搭建一条可靠的数据流。这条链路通常包含以下环节用户输入来自 Web 页面、客户端、IM 工具或 API 请求。意图理解通过 Prompt 设计或 Agent 规划把用户需求转化为模型可执行的指令。上下文构建从业务数据库、知识库、对话历史中检索并组装上下文。模型推理调用大模型生成结果可能是文本、代码、图片或结构化数据。结果校验对模型输出做格式检查、内容安全过滤、业务规则校验。业务回写把结果展示给用户或写入下游业务系统。这个链路里的每个环节都有对应的工程问题。想真正做生产级 AI 应用不能只依赖一个“万能 Prompt”而是要像做传统后端一样考虑性能、可维护性和容错。2.2 Prompt 工程仍然很重要但只是起点Prompt 是开发者与大模型交互的最直接方式。一个设计良好的 Prompt可以在不训练模型的情况下显著提升输出质量。下面是一个简单的提示词模板示例适用于构建企业知识库问答你是一个专业的企业知识库助手。请根据以下资料回答用户问题。 要求 1. 只能使用资料中的信息作答不要自行编造。 2. 如果资料中没有答案请回复“资料中未找到相关信息”。 3. 回答尽量简洁控制在200字以内。 资料 {context} 用户问题 {question}这里的{context}是检索到的资料片段{question}是用户输入的问题。在实现 RAG 应用时这个模板会被动态填充。但有经验的开发者会发现Prompt 工程只是“第一公里”。当系统复杂到一定程度后你需要解决的问题会变成上下文超长怎么办多个工具如何选择模型输出不稳定怎么兜底如何评估 Prompt 改动的效果这些问题单靠修改提示词是无法彻底解决的需要上升到系统工程层面。2.3 RAG让大模型学会“查资料”RAGRetrieval-Augmented Generation检索增强生成是目前企业落地大模型最主流的技术方案。它的核心思想是不直接让模型凭空回答而是先从知识库检索相关内容再把检索结果作为上下文交给模型生成答案。RAG 的优势在于回答内容可以追溯来源减少“幻觉”。知识更新成本低不需要重新训练模型。通过控制检索权限可以在一定程度上保护内部数据。一个典型的 RAG 流程如下1. 文档加载读取 PDF、Word、Markdown 等格式的文档。 2. 文本分割按固定长度或语义边界将文档切成多个 chunk。 3. 向量化用 Embedding 模型将 chunk 转换为向量。 4. 存储将向量写入向量数据库。 5. 用户提问将用户问题向量化在向量库中做相似度检索。 6. 增强生成将检索到的 top-k 结果和用户问题组合成 Prompt交给大模型生成答案。下面用 Python 伪代码演示 RAG 的核心思路依赖的具体库需要根据你的实际环境安装from typing import List def build_rag_pipeline(retriever, llm, question: str) - str: # 第1步检索与问题最相关的文档片段 docs: List[str] retriever.search(question, top_k3) # 第2步组装上下文 context \n\n.join(docs) # 第3步构造 Prompt prompt f请根据以下资料回答问题。 资料 {context} 问题 {question} 如果资料不足请回答“资料不足”。 # 第4步调用大模型生成答案 answer llm.generate(prompt) return answer这只是演示代码但已经能看出 RAG 的基本骨架。真正的生产系统还需要考虑chunk 大小怎么设置、检索阈值怎么定、多路召回怎么融合、问答质量怎么评估。RAG 是 AI 应用开发中最值得优先掌握的方向之一。无论是腾讯还是其他云厂商几乎都在围绕“大模型 知识库”的场景提供工具链支持。2.4 Agent从“回答问题”到“完成任务”如果说 RAG 解决的是“让模型知道什么”那么 Agent 解决的就是“让模型做到什么”。一个 Agent 通常包含四个核心组件规划器拆解用户目标制定执行计划。记忆保存对话历史或业务上下文。工具集调用外部 API、数据库或代码函数。执行器按计划调用工具收集结果并反馈给模型。举个例子一个“智能招聘助手” Agent 需要完成的任务可能是1. 从简历库中筛选符合岗位要求的候选人。 2. 调用邮件 API 发送面试邀请。 3. 记录面试时间到日历系统。 4. 将结果同步给 HR 系统。这个过程中模型负责理解和规划工具负责具体执行。Agent 与传统问答系统最大的区别是它具备“循环”能力执行完一个步骤后可以根据结果决定下一步动作直到完成整个目标。下面是 Agent 工具调用的简化逻辑def agent_execute(task: str, tools: dict): plan planning_model.plan(task) results [] for step in plan: tool_name step[tool] tool_args step[args] if tool_name in tools: result tools[tool_name](**tool_args) results.append(result) # 将结果交给模型判断是否继续或调整 should_continue execution_model.should_continue(results) if not should_continue: break return resultsAgent 的工程难度远高于普通问答。你需要处理工具调用失败、参数解析错误、死循环、权限越界等问题。这也是为什么真正的生产级 Agent 系统目前还不多见。3. 企业级 AI 落地模型选择、部署与评估3.1 模型选择不是越大越好“腾讯 AI 不再观望”带来的一个实际变化是开发者在模型选型上有了更多选择。无论是调用云端 API 还是私有化部署都要遵循一个原则根据场景选模型。常见的选型维度包括任务类型文本生成、代码生成、图片生成、语音识别。响应速度面向 C 端用户的应用要求低延迟离线分析任务可以接受更长时间。成本预算大模型的调用成本随参数规模和请求量增长。数据安全涉及用户隐私或商业机密的场景通常倾向私有化部署。上下文长度需要处理长文档的场景对模型上下文窗口有硬性要求。你可以先用小模型 RAG Agent 组合验证方案再根据效果决定是否需要升级到更大参数模型。这比一开始就追求最强大模型更务实。3.2 部署方式API 调用与私有化部署目前企业接入大模型主要有两种方式。API 调用是最快的方式。你不需要关心 GPU、推理服务、模型更新等问题只需要拿着 API Key按官方文档接入即可。适合快速原型验证和大多数中小型业务。私有化部署适合对数据安全、合规要求极高的企业。你需要准备 GPU 资源、推理框架、模型文件、监控告警等。这种方式的前期投入大但数据完全掌握在自己手里。下面是一个简单的模型 API 调用示例使用 Python 的requests库import requests def call_llm(api_url: str, api_key: str, prompt: str) - str: headers { Content-Type: application/json, Authorization: fBearer {api_key} } payload { model: your-model-name, messages: [ {role: user, content: prompt} ], temperature: 0.7 } response requests.post(api_url, jsonpayload, headersheaders, timeout60) response.raise_for_status() data response.json() return data[choices][0][message][content]注意不同云厂商的 API 路径、鉴权方式、返回格式可能不同实际使用时以对应官方文档为准。如果你需要在本地部署一个开源模型可以参考下面的简化流程# 1. 准备 GPU 环境安装依赖 pip install torch transformers accelerate # 2. 下载模型文件以 Hugging Face 上的开源模型为例 git lfs install git clone https://huggingface.co/your-org/your-model # 3. 编写推理脚本 python infer.py核心推理脚本infer.py示例from transformers import AutoModelForCausalLM, AutoTokenizer model_name ./your-model tokenizer AutoTokenizer.from_pretrained(model_name) model AutoModelForCausalLM.from_pretrained(model_name, device_mapauto) prompt 用一句话介绍大模型RAG技术 inputs tokenizer(prompt, return_tensorspt).to(cuda) output model.generate(**inputs, max_new_tokens128) print(tokenizer.decode(output[0], skip_special_tokensTrue))真实部署中还需要考虑并发控制、GPU 显存优化、模型量化等问题这里只是演示基本流程。3.3 模型评估上线前最重要的一步很多 AI 应用项目“开发一时爽上线火葬场”的原因就是缺少系统性的模型评估。模型评估不能只看一两个例子要从多个维度建立指标体系准确率生成内容是否符合事实。相关性回答与用户问题的匹配程度。完整性是否遗漏了关键信息。格式合规性输出是否符合 JSON、表格等预定格式。安全性是否包含违规、泄露风险内容。延迟与成本P95 响应时间、单次调用成本。建议的做法是建立一份结构化的评测集包含正常问题、边界问题、恶意问题、格式要求等。每次修改 Prompt 或切换模型时跑一遍评测集对比得分。下面是一个简单的评测结果记录表维度用例数量通过率说明事实准确性5086%建议增加知识库检索覆盖率格式合规性30100%输出均为合法 JSON安全性2095%1例绕过系统提示词响应延迟50平均1.8秒P95 为3.2秒超出预期评测数据要定期维护。模型会更新业务会变化评测集也需要跟着迭代。4. AI Agent 开发实战构建一个企业知识库智能助手4.1 需求拆解前面讲了概念这一节我们做一个完整的实战。假设要为企业构建一个“内部知识库智能助手”它需要具备以下能力员工输入问题助手基于内部文档回答。回答必须附上来源文档。当问题涉及多个部门时可以调用不同的文档集合。支持多轮对话能根据上下文追问。4.2 技术选型与项目结构这个项目采用“大模型 API 向量数据库 LangChain 风格编排 FastAPI 服务”的架构。项目结构如下project/ ├── app/ │ ├── main.py # FastAPI 入口 │ ├── retriever.py # 检索模块 │ ├── agent.py # Agent 编排 │ ├── config.py # 配置管理 │ └── models.py # 数据模型 ├── data/ │ └── docs/ # 知识库文档 ├── scripts/ │ └── ingest.py # 文档入库脚本 ├── requirements.txt └── .env这里只演示核心代码实际应根据你的模型 API 和向量数据库进行调整。4.3 文档入库脚本scripts/ingest.py负责把文档切分、向量化并写入向量数据库# scripts/ingest.py import os from typing import List def load_documents(doc_dir: str) - List[str]: 加载目录下的所有文本文件返回文档列表。 docs [] for filename in os.listdir(doc_dir): if filename.endswith(.txt): filepath os.path.join(doc_dir, filename) with open(filepath, r, encodingutf-8) as f: docs.append(f.read()) return docs def split_text(text: str, chunk_size: int 500, overlap: int 50) - List[str]: 按固定长度切分文本并保留一定重叠避免切断语义。 chunks [] start 0 while start len(text): end start chunk_size chunks.append(text[start:end]) start end - overlap return chunks def main(): doc_dir data/docs documents load_documents(doc_dir) all_chunks [] for doc in documents: all_chunks.extend(split_text(doc)) print(f共加载 {len(documents)} 个文档切分为 {len(all_chunks)} 个 chunk) # 这里省略向量化与入库逻辑实际项目会调用 Embedding API 并写入向量数据库 if __name__ __main__: main()注意chunk 大小的设置有讲究。太小会丢失上下文太大会引入噪声。实际项目中建议先测试不同参数下检索效果再确定最优值。4.4 检索模块app/retriever.py负责从向量数据库检索相关内容# app/retriever.py from typing import List def search_knowledge_base(question: str, top_k: int 3) - List[str]: 根据用户问题从向量知识库检索相关内容。 实际项目会调用 Embedding API 将 question 转为向量再查询向量数据库。 # 伪代码 # query_vector embedding_model.encode(question) # results vector_db.similarity_search(query_vector, top_ktop_k) # return [item[text] for item in results] # 为防止读者直接运行报错这里返回一个演示结果 return [演示文档片段一RAG 是检索增强生成的缩写。, 演示文档片段二Agent 是一种自主规划与工具调用框架。]4.5 Agent 编排模块app/agent.py实现简单的 Agent 逻辑先检索再生成回答最后校验来源。# app/agent.py from typing import Dict from .retriever import search_knowledge_base def generate_answer(question: str, history: List[Dict] None) - Dict: 基于 RAG 的问答 Agent。 # 1. 检索知识库 related_docs search_knowledge_base(question) # 2. 组装上下文 context \n\n.join(related_docs) # 3. 构造 Prompt prompt f你是企业知识库助手。请基于资料回答问题并标注引用来源。 资料 {context} 问题 {question} 回答要求 - 只使用资料内容。 - 如果资料不足请直接说明。 - 输出格式为 JSON包含 answer 和 sources 两个字段。 # 4. 调用模型 API此处省略真实调用返回模拟结果 answer_data { answer: RAG 通过检索增强生成来提升回答准确率。, sources: [演示文档片段一] } return answer_data实际项目中generate_answer内部会调用大模型 API并把返回的 JSON 解析后返回给前端。建议使用 Pydantic 模型做输出校验。4.6 FastAPI 对外服务app/main.py提供 HTTP 接口# app/main.py from fastapi import FastAPI from pydantic import BaseModel from .agent import generate_answer app FastAPI(title企业知识库助手) class ChatRequest(BaseModel): question: str session_id: str default class ChatResponse(BaseModel): answer: str sources: list app.post(/api/chat, response_modelChatResponse) def chat(req: ChatRequest): result generate_answer(req.question) return ChatResponse( answerresult[answer], sourcesresult[sources] ) if __name__ __main__: import uvicorn uvicorn.run(app, host0.0.0.0, port8000)4.7 运行与验证启动服务pip install -r requirements.txt uvicorn app.main:app --reload --port 8000使用 curl 验证curl -X POST http://localhost:8000/api/chat \ -H Content-Type: application/json \ -d {question: 什么是RAG}预期返回{ answer: RAG 通过检索增强生成来提升回答准确率。, sources: [演示文档片段一] }到这里一个最小可运行的 RAG 问答服务就完成了。后续可以扩展的内容包括多轮对话记忆、权限控制、文档更新机制、回答质量监控等。5. AI 应用落地的常见问题与排查思路5.1 模型输出不稳定问题现象常见原因解决思路同样问题多次回答不一致temperature 参数过高降低 temperature或改用固定 seed回答内容偏离用户问题上下文被无关信息干扰优化检索结果限制上下文长度模型输出格式不符合预期没有指定输出格式在 Prompt 中给出格式模板或用 JSON Mode模型“胡编乱造”知识库内容不足加强 RAG 检索设置“不知道”兜底逻辑建议不要指望模型“稳定”要通过参数、缓存、格式校验等手段保证业务层的确定性。5.2 RAG 检索不到相关内容问题现象常见原因解决思路检索结果与问题无关文本切分方式不合理调整 chunk 大小或改用语义切分知识库内容更新后仍检索到旧内容向量库未同步更新建立文档更新触发的增量入库机制专业术语检索效果差Embedding 模型对领域术语理解不足增加同义词扩充或微调 Embedding 模型检索返回结果太少相似度阈值设置过高降低阈值扩大 top-k 范围排查顺序先确认文档有没有正确入库再检查向量化结果最后调整检索参数。5.3 成本超预期问题现象常见原因解决思路单个问题调用成本过高上下文过长导致 token 消耗大精简 Prompt限制历史轮次并发高时费用飙升无缓存策略对高频问题做缓存减少重复调用大模型调用失败后重试造成费用翻倍重试策略不完善设置超时退避避免无限重试长文档处理成本高直接把全文塞给模型优先使用 RAG 检索只传相关片段成本优化不是一个独立环节而是贯穿整个架构设计的持续工作。5.4 安全与合规风险AI 应用的安全性需要单独重视主要包括三方面提示词注入用户可能通过恶意输入让模型执行非预期操作。缓解方式是隔离系统指令与用户输入并对输出做过滤。数据泄露检索范围不能超出用户权限。建议在知识库中标注数据权限在检索阶段就根据用户角色过滤。内容合规模型输出可能包含不当内容。需要接入内容安全检测服务并对违规内容做拦截或降级处理。6. AI 工程化的最佳实践与建议6.1 从业务问题出发而不是从模型出发很多 AI 项目失败不是因为模型不够强而是因为业务目标不清晰。在动手之前先想清楚这个场景是否真的需要大模型期望的业务指标是什么回答准确率、用户留存、客服成本下降现在最大的瓶颈是模型能力还是数据、流程、系统集成如果现有的规则引擎已经能解决 80% 的问题就不要为了“上 AI”而上 AI。6.2 建立评估和监控体系AI 应用的维护比传统应用更难因为模型行为具有不确定性。上线前要建立评估集上线后要监控响应质量、延迟、成本、异常调用。推荐监控指标每日调用量、Token 消耗量、平均延迟。用户反馈“不相关回答”的比例。模型 API 错误率、超时率。检索命中的空结果率。Prompt 改动前后的评测对比。6.3 保持简单先做单点再扩 AgentAgent 看起来强大但复杂度也高。建议企业落地时先不做大而全的 Agent而是从“一个场景 RAG 一个工具调用”开始验证跑通后再逐步加能力。比如先做“内部知识库问答”运行稳定后再加“发送邮件”“创建工单”等工具调用。每一步都保证可回退、可监控。6.4 善用云平台和开源工具不要重复造轮子当前大模型应用开发已经有比较丰富的工具链。云厂商提供了模型 API、向量数据库、内容安全检测、AI 应用平台等服务开源社区有 LangChain、LlamaIndex、Dify、FastAPI 等优秀项目。建议的策略是快速原型用云 API 开源编排框架。生产系统根据数据安全要求采用私有化部署或混合部署。不要把时间浪费在开发“Embedding 算法”或“推理框架”上这些不是核心业务价值。6.5 重视代码质量与传统工程素养AI 应用本质上还是软件项目。函数命名要清晰模块边界要合理异常处理要完整日志记录要可追踪。不要因为“这是 AI 项目”就降低后端工程的标准。几条具体建议所有外部 API 调用必须设置超时和重试策略。Prompt 和代码分开管理便于版本对比。模型输出必须校验格式不能直接使用。对话历史需要做长度控制避免无限增长。权限控制要在应用层实现不能依赖模型自觉。7. 总结与下一步学习方向腾讯 AI 从“观望”到“下场”反映的是大模型行业从技术验证走向规模化落地的整体趋势。对开发者来说这既是挑战也是机会。挑战在于 AI 应用开发的复杂度正在上升机会在于工具链和云服务正在把高端技术变成可用的 API 和低代码平台。这篇文章围绕几个关键方向做了梳理腾讯 AI 战略转向的背景和三层技术布局。AI 应用开发的新范式Prompt、RAG、Agent 在不同场景中的作用。企业级落地中的模型选择、部署方式和评估体系。一个基于 RAG 的知识库问答系统的最小实现。常见问题与排查思路。从工程角度给出的最佳实践建议。如果你刚接触大模型应用开发下一步可以优先学习这三个方向第一RAG 技术。这是企业落地最容易看到效果的方向也是门槛相对较低的切入点。重点掌握文档切分、向量检索、Prompt 组装、质量评估这几个环节。第二Agent 开发。在 RAG 基础上学习如何让模型调用外部工具、如何管理多轮对话、如何处理执行过程中的异常。重点掌握工具定义、规划策略、状态管理。第三模型部署与优化。理解 GPU 环境配置、模型量化、推理加速、并发控制这些工程问题。即使平时主要用云 API了解这些也能帮助你在选型和预算评估时做出更合理的判断。最后提醒一句AI 技术迭代很快今天的新框架几个月后可能就被替代但“数据流 模型 工具 评估”这套工程方法论是稳定的。把基础打牢比追着新模型跑更重要。如果这篇文章对你有帮助可以收藏备用也可以结合实际项目在评论区交流你遇到的问题。下一篇我会继续拆解 Agent 开发中的工具调用与状态管理实践欢迎关注。
返回列表