本文档介绍如何使用大型语言模型 (LLM) 构建文本生成应用程序。文本生成是生成式 AI 最基本的功能之一,它使开发人员能够创建能够为各种目的生成类似人类文本的应用程序。有关基于聊天的应用程序的信息,请参阅 聊天应用程序;有关使用嵌入式搜索的功能,请参阅 搜索应用程序。
文本生成应用程序是利用 LLM 根据提示或输入生成新文本内容的软件系统。与命令集有限或界面僵化的传统应用程序不同,文本生成应用程序通过接受自然语言输入并生成上下文相关的输出来提供更大的灵活性。
来源: 06-text-generation-apps/README.md23-55
传统的软件应用程序通常提供
然而,文本生成应用程序提供了
来源: 06-text-generation-apps/README.md27-46
文本生成应用程序可用于多种目的
| 用例 | 描述 | 示例 |
|---|---|---|
| 聊天机器人 | 回答特定主题问题的交互式系统 | 公司产品信息助手 |
| 内容生成 | 创建各种文本格式 | 散文写作、博客文章生成 |
| 文本摘要 | 将较长的文本精简成较短的格式 | 文章摘要、报告要点 |
| 创意写作 | 协助故事叙述和小说创作 | 故事开头、角色发展 |
| 代码生成 | 根据描述创建编程代码 | 正则表达式、函数实现 |
来源: 06-text-generation-apps/README.md47-54 01-introduction-to-genai/README.md86-111
文本生成应用程序由几个关键组件组成,它们共同将用户输入转换为有意义的输出。
来源: 06-text-generation-apps/README.md55-77
为了构建文本生成应用程序,开发人员可以利用各种库
这些库封装了 API 调用的复杂性,并提供了发送提示和处理完成的便捷方法。
来源: 06-text-generation-apps/README.md62-72
与文本生成模型的核心交互包括
在 OpenAI 库中,这通常通过标准文本生成的 Completion.create() 方法或更具交互性的对话响应的 ChatCompletion.create() 方法来处理。
来源: 06-text-generation-apps/README.md132-158
创建文本生成应用程序涉及多个步骤,从设置所需的库到处理模型的响应。
来源: 06-text-generation-apps/README.md73-158
开始构建文本生成应用程序
安装所需的库:
pip install openai python-dotenv
设置环境变量:在一个 .env 文件中存储 API 密钥等敏感信息
OPENAI_API_KEY=your_api_key
AZURE_OPENAI_ENDPOINT=your_endpoint (for Azure OpenAI)
配置 OpenAI 客户端:
来源: 06-text-generation-apps/README.md79-130 00-course-setup/README.md24-73
以下是创建简单的文本生成应用程序的方法
来源: 06-text-generation-apps/README.md178-199
文本生成可以使用多个参数进行自定义
Token 是模型处理的基本单位。限制 Token 的数量可以控制响应的长度并影响成本
来源: 06-text-generation-apps/README.md583-589
Temperature 控制模型输出的随机性
在您的完成请求中设置温度
来源: 06-text-generation-apps/README.md591-597
食谱生成器提供了文本生成应用程序的一个实用示例。本示例演示了如何构建一个交互式应用程序,该应用程序可根据现有食材生成食谱。
来源: 06-text-generation-apps/README.md222-422
收集用户输入的食材
格式化提示并包含这些信息
将提示发送到 OpenAI API 并接收响应
处理并显示生成的食谱:
添加过滤条件以适应饮食限制
根据食谱生成购物清单
来源: 06-text-generation-apps/README.md372-537
在构建文本生成应用程序时,请遵循以下最佳实践,以确保安全性、效率和质量
来源: 06-text-generation-apps/README.md553-582 00-course-setup/README.md23-73
max_tokens 限制以控制响应长度和成本。来源: 06-text-generation-apps/README.md583-590
来源: 06-text-generation-apps/README.md591-599
来源: 06-text-generation-apps/README.md227-422
文本生成应用程序提供了一种灵活而强大的方式,可以利用大型语言模型来创造有价值的用户体验。通过了解如何精心设计有效的提示,配置合适的参数以及处理完成的内容,开发人员可以构建能够为各种目的生成高质量文本的应用程序。
在开发文本生成应用程序时,请记住考虑
对于更高级的交互模式,请考虑探索聊天应用程序,它建立在这些基础之上,以创建会话式体验。