AI辅助编码和LLM提示工程
介绍
该存储库提供了与AI辅助编码,自回归大型语言模型(LLM)和高级及时工程技术相关的资源和演示。
涵盖的主题:
- AI辅助编码
- 自回归大型语言模型(LLMS)
- 及时工程201
AI辅助编码
存储库包含jupyter笔记本( AI_ASSISTED_CODING.ipynb ),该笔记本使用语言模型演示了AI辅助编码技术。
自回归语言模型
自回归的LLM基于输入文本预测下一个单词,并作为概率内核进行操作。
关键概念:
- 下一个字预测:给定前缀,该模型生成了最有可能的下一个单词。
- 随机性质:给定的输入可能会产生从概率分布中采样的不同输出,这可能导致不一致或幻觉。
- 概率计算:语言模型基于先前的观察结果将概率分配给单词序列。
大型语言模型的类型:
- BASE LLM(预培训):在大型文本语料库中接受培训,以预测句子中的下一个单词。
- 指导调整的LLM(微调):优化以遵循说明并使用以下技术提高响应精度:
- 监督微调(SFT)
- 通过人为反馈(RLHF)的加强学习
- 直接优先优化(DPO)
采样和参数
控制模型输出的关键参数:
- 温度:控制随机性(较高的值=更多的创造力,较低的值=更确定性的响应)。
- TOP-P(核采样):限制对最可能的子集的限制选择。
- logprobs:对调试和置信分析的日志概率分数。
- 处罚:
- 频率惩罚:减少频繁单词的重复。
- 存在惩罚:通过避免重复的短语来鼓励各种产出。
- 最大令牌:限制响应长度。
- 停止序列:定义停止文本生成的令牌序列。
- n&best_of:控制生成的完成数。
及时工程201
存储库包括一个jupyter笔记本电脑( PROMPT_ENGINEERING.ipynb ),展示了llms的及时优化技术。
核心主题:
- 了解模型行为:微调提示实现所需的响应。
- 控制创造力和准确性:调整结构化,相干和相关输出的参数。
- 调试模型响应:使用日志概率来完善提示。
演示和用法
要探索概念,请运行提供的Jupyter笔记本:
-
AI_ASSISTED_CODING.ipynb - AI辅助编码演示。 -
PROMPT_ENGINEERING.ipynb - 高级及时工程策略。
参考
- 深度学习。
- Stanford NLP(CS224N)
- AI工程研究
有关贡献,请打开拉动请求或在此存储库中创建问题。愉快的编码!