# llm_starter **Repository Path**: skylee01/llm_starter ## Basic Information - **Project Name**: llm_starter - **Description**: 吴恩达llm cookbook python代码仓库 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2025-11-25 - **Last Updated**: 2025-11-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # LLM Starter 这是一个基于Ollama本地模型和大语言模型的入门项目,包含了7天的学习内容,涵盖了从基础使用到高级应用的各个方面。 ## 项目概述 本项目通过7天的学习计划,系统地介绍了如何使用本地部署的Ollama模型和各种大语言模型API。每天的学习内容都包含理论知识和实践示例,帮助开发者快速掌握大语言模型的应用开发。 ## 环境要求 - Python 3.8+ - Ollama(本地部署) - 已安装的Ollama模型(如llama3.2、qwen3:0.6b等) ## 安装依赖 ```bash pip install -r requirements.txt ``` ## 项目结构 ``` llm_starter/ ├── day1/ # Ollama基础使用 ├── day2/ # Gradio界面开发 ├── day3/ # 提示词工程基础 ├── day4/ # 格式化输出技巧 ├── day5/ # 文本推断与信息提取 ├── day6/ # 文本转换与翻译 ├── day7/ # 文本扩写与生成 └── requirements.txt ``` ## 学习内容 ### Day 1: Ollama基础使用 - 了解Ollama的基本概念和安装方法 - 学习如何下载和管理本地模型 - 掌握通过API与模型交互的基本方法 - 实现简单的对话应用 **主要文件:** - `app.py` - 基础对话示例 - `get_model.py` - 获取可用模型列表 - `list_running_models.py` - 列出正在运行的模型 - `embedding_text.py` - 文本嵌入示例 ### Day 2: Gradio界面开发 - 学习使用Gradio创建交互式界面 - 实现基于Ollama的聊天机器人应用 - 探索不同界面组件的使用方法 **主要文件:** - `gradio_demo.py` - Gradio基础演示 - `gradio_qwen3_chat.py` - 基于Qwen3的聊天机器人 ### Day 3: 提示词工程基础 - 掌握基本的提示词设计原则 - 学习不同类型的提示词格式 - 理解如何通过提示词控制输出结果 **主要文件:** - `01.basic_prompt.py` - 基本提示词示例 - `02.format_prompt.py` - 格式化提示词 - `03.match_condition_prompt.py` - 匹配条件的提示词 - `04.not_match_condtion_prompt.py` - 不匹配条件的提示词 - `05.few_short_prompt.py` - 少样本提示词 - `06.summarize_short_format_prompt.py` - 短格式总结提示词 ### Day 4: 格式化输出技巧 - 学习如何控制模型的输出格式 - 掌握生成表格、列表等结构化内容的方法 - 实现产品描述等实际应用场景 **主要文件:** - `product_desc_basic.py` - 基础产品描述生成 - `product_desc_shorter.py` - 简洁产品描述 - `product_desc_shorter_detail.py` - 详细产品描述 - `product_desc_shorter_with_table.py` - 带表格的产品描述 ### Day 5: 文本推断与信息提取 - 学习从文本中提取特定信息 - 掌握情感分析和主题分类技术 - 实现多段文本的综合分析 **主要文件:** - `text_Inferring_demo.py` - 文本推断示例 - `multi_part_text_Inferring.py` - 多段文本推断 - `prompt_information_gather.py` - 信息收集提示词 - `test_Inferring_senior.py` - 高级推断测试 ### Day 6: 文本转换与翻译 - 学习使用LLM进行文本转换 - 掌握多语言翻译技术 - 实现不同语调和风格的文本转换 **主要文件:** - `text_transforming.py` - 文本转换基础 - `judge_language.py` - 语言判断 - `multi_language_transforming.py` - 多语言转换 - `transforming_app.py` - 转换应用 - `transforming_different_tone.py` - 不同语调转换 ### Day 7: 文本扩写与生成 - 学习使用LLM扩写短文本 - 掌握生成详细内容的技术 - 实现创意写作和内容生成 **主要文件:** - `text_expanding_basic.py` - 基础文本扩写 ## 快速开始 1. 确保已安装并启动Ollama服务 2. 下载所需模型(如qwen3:0.6b): ```bash ollama pull qwen3:0.6b ``` 3. 运行任意示例文件,例如: ```bash python day1/app.py ``` 4. 尝试Gradio聊天应用: ```bash python day2/gradio_qwen3_chat.py ``` ## API使用示例 ### 基本对话 ```python from openai import OpenAI client = OpenAI(base_url="http://localhost:11434/v1/", api_key="linfeng") response = client.chat.completions.create( model="qwen3:0.6b", messages=[ {"role": "user", "content": "你好,请介绍一下你自己!"}, ], temperature=0.9, max_tokens=150, ) print(response.choices[0].message.content) ``` ### 提示词工程示例 ```python from tool import get_completion text = "您应该提供尽可能清晰、具体的指示,以表达您希望模型执行的任务..." prompt = f""" 把用三个反引号括起来的文本总结成一句话。 ```{text}``` """ response = get_completion(prompt) print(response) ``` ## 贡献指南 欢迎提交Issue和Pull Request来改进这个项目。 ## 许可证 本项目采用MIT许可证。 ## 参考资料 - [Ollama官方文档](https://ollama.com/) - [Gradio官方文档](https://gradio.app/) - [OpenAI API文档](https://platform.openai.com/docs/api-reference/chat)