AI开发 | Prompt及LangChain调用千帆模型示例

为了实现Text2Sql,一步一步学习AI开发

一、Prompt是什么?

Prompt按字面理解就是提示的意思,给AI提问题时候的提示语,如下面的例子:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
从开始"最推荐吃的水果是什么"到"现在最推荐吃的水果是什么"再到"现在最推荐吃的水果是什么?请简要回答,控制在100字以内",我们可以看到不同的提问,AI的回答是不一样的。和搜索时代一样,好的关键字,会让搜索引擎返回的搜索结果更精确,AI也是一样的好的提示也会让AI的回答更准确。因此就衍生出了**提示工程(Prompt Engineering)**这种技术,主要应用于预训练的大规模语言模型(如GPT系列模型),通过精心设计和优化输入的提示(Prompts),来引导模型生成高质量、准确且有针对性的输出。需要更深入的学习可以看一下吴恩达教授的《ChatGPT Prompt Engineering for Developers》

二、设计好Prompt的几项原则

1.清晰明确的目标

提示应该尽可能地清晰和具体,减少歧义,以便模型能够理解意图并提供相关的回答。

2.上下文相关

在提示中提供必要的背景信息,帮助模型理解问题的上下文,从而生成更贴切的回答。

3.简洁性

避免冗长的提示,保持简单直接,这样模型更容易理解和响应。

4.适应性和灵活性

设计能够适应不同情况和需求变化的提示,以便在各种场景下都能有效使用。

三、LangChain调用千帆示例

首先,可以去百度千帆大模型(有免费模型可以使用)注册相关信息,并安装LangChain相关类库,代码如下(示例):

import os
from langchain.prompts import (FewShotPromptTemplate
### LangChain 与百度平台的集成及使用方法 LangChain 是一种用于构建大型语言模型应用程序的强大框架,而百度平台则提供了一系列针对大模型开发的支持服务。两者的结合能够显著提升开发者在构建复杂 AI 应用程序时的能力。 #### 百度平台的功能支持 百度平台通过其强大的基础设施和服务体系,为基于 LangChain 的应用开发提供了全面的技术支撑[^1]。这包括但不限于模型训练、推理优化以及部署管理等功能模块。开发者可以通过访问 **百度平台开发者中心** 和查阅相关文档来获取详细的指导信息。 #### LangChain 官方文档的作用 为了更好地理解如何利用 LangChain 实现具体功能,建议参考 LangChain 社区提供的官方文档资源[^3]。这些文档不仅涵盖了基础概念介绍,还包含了丰富的案例分析和技术细节说明,有助于快速上手并掌握核心技能点。 #### 结合 FastAPI 构建高效接口 如果计划将上述技术栈应用于实际项目当中,则可以考虑引入 FastAPI 来创建高性能 RESTful API 接口[^2]。借助该库内置的数据校验机制(由 Pydantic 提供),再加上 Starlette 带来的异步处理优势,整个系统的响应速度将会得到极大改善。 以下是实现这一目标的一个简单示例: ```python from fastapi import FastAPI, Depends from langchain.llms import BaiduQwen from pydantic import BaseModel app = FastAPI() class Query(BaseModel): prompt: str @app.post("/query/") async def query_model(query_data: Query): llm = BaiduQwen() result = await llm.apredict(query_data.prompt) return {"response": result} ``` 此代码片段展示了怎样定义一个 POST 请求路径 `/query/` 并接受 JSON 格式的输入参数 `prompt` 。随后调用了来自 LangChain 封装好的 Qwen 大规模预训练语言模型完成预测操作最后返回结果给客户端。 --- ####
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值