agi大模型
一、python基础语法 08:47
1. Python基础语法的主要知识点 11:23
- 数据类型:包括int、float、string等基本数据类型及其对应方法,如字符串的切割、切片等操作
- 函数:函数的定义、调用和使用方法,学到递归即可
- 面向对象编程:类的概念和使用
- 进阶内容:
- 异常处理
- 内置模块的使用(如OS模块)
- 模块化编程
- 学习建议:
- 基础部分(数据类型和函数)必须掌握
- 面向对象编程建议学习
- 更高级内容可根据兴趣选择性学习
- 推荐B站等平台上的Python基础教程
2. 环境配置与工具使用 13:54
1)Python安装与版本管理 14:50
- 版本选择:
- 推荐Python 3.10或3.11版本
- Mac电脑内置Python 3.8,可覆盖安装
- 安装位置:
- Windows避免安装在C盘
- Mac无盘符限制
- 验证安装:
- Windows使用where python命令
- Mac使用where python3命令
- 注意:C:\Users\Administrator\AppData\Local\Microsoft\WindowsApps\python.exe不是真正的安装路径
2)Jupyter Notebook使用 14:25
安装方法:
启动方式:
- 在目标目录下打开终端输入jupyter notebook
- 启动后会在当前目录打开
浏览器配置
:
- 推荐使用Chrome浏览器
- 可复制带token的URL在其他浏览器打开
基本操作
:
- 代码单元格与Markdown单元格切换
- 运行快捷键:Shift+Enter或Ctrl+Enter
- 保存快捷键:Ctrl+S
优势
:
- 支持分段执行代码
- 适合教学演示和实验性编程
3)PyCharm与VS Code选择
PyCharm
:
- 推荐社区版,无需专业版
- 启动较慢,需耐心等待
- Mac用户直接使用社区版
VS Code
:
- 轻量级替代方案
- 适合配置较低的电脑
选择建议
:
- 根据个人习惯选择工具
- 不要纠结于工具版本
- 电脑性能较差时推荐VS Code
4)环境变量配置 32:05
.env文件
:
- 用于存储敏感信息如API KEY
- 格式:OPENAI_API_KEY=”your_key_here”
代理设置:
加载方法:
5)常用命令
目录操作
:
- cd:切换目录
- ls(Mac)/dir(Windows):列出当前目录内容
Python相关
:
- python —version:查看Python版本
- pip install package_name:安装Python包
Jupyter相关
:
- jupyter notebook:启动Notebook
- !pip install package_name:在Notebook中安装包
二、大模型的认知
1. env文件问题 32:16
创建步骤
:
- Windows系统需先显示文件扩展名
- 右键新建文本文件后删除前缀,只保留”.env”后缀
- 内容必须使用英文引号,格式为:
注意事项
:
- 禁止将变量放入系统环境变量
- Jupyter用户需重启内核才能识别新建的env文件
- 建议直接复制课件内容避免格式错误
内容规范
:
- 仅包含API_KEY和BASE_URL两个变量
- 所有符号必须为英文半角(包括引号、等号)
- 变量名严格区分大小写
2. mac问题 36:38
特殊处理
:
- 通过PyCharm/VSCode图形界面创建.env文件
- 在IDE中右键项目目录选择”New File”创建
- 注意.env是隐藏文件,在Finder中默认不可见
验证方法
:
- 使用代码编辑器确认文件内容
- 确保没有多余空格或换行符
3. 全局环境和虚拟环境问题 40:13
1)全局环境和虚拟环境的概念
核心区别
:
- 全局环境:通过pip install直接安装到系统Python
- 虚拟环境:为每个项目创建隔离的Python运行环境
典型场景
:
- 当不同项目需要同一库的不同版本时(如A库需0.1.0和0.1.1)
- 避免卸载重装导致的版本冲突
优势对比
:
- 虚拟环境允许并行存在多个依赖版本
- 项目迁移时可通过requirements.txt重建环境
2)GitHub示例操作 44:18
行业实践
:
- 项目根目录通常包含requirements.txt或Pipfile
- 示例:Dify项目使用Dockerfile管理环境
依赖导出
:
- 使用pip freeze > requirements.txt命令
- 该文件记录所有依赖包及其精确版本号
环境重建:
三、Python环境使用详解 45:21
1. 搜索Python相关资源
1)GitHub上的RAG项目
RAGFlow项目:开源RAG(检索增强生成)引擎,基于深度文档理解技术,支持Python语言开发(49.1%代码占比)
项目特点
:
- 包含79.8k个相关仓库结果
- 支持多语言开发(TypeScript 47.0%,JavaScript 14%)
- 最新更新时间为1小时前,活跃度较高
2)项目依赖管理方式
依赖管理
:
- 现代Python项目普遍采用Docker容器化部署
- 通过Dockerfile配置环境依赖(如Python 3.8+、JDK等)
- 包含NLTK数据、Tika服务器等专业组件
典型依赖项
:
- 基础库:libglib2.0、libgdiplus
- Python包:python-pptx、selenium
- 工具链:docker-ce、apt-cacher-ng
3)环境配置要点
关键配置
:
- 使用虚拟环境隔离项目依赖
- 避免使用系统默认Python路径(如WindowsApps下的python.exe)
- 通过.env文件管理API密钥等敏感信息
注意事项
:
- 环境变量引号必须使用英文格式
- 不建议将密钥存入系统环境变量
- 典型项目结构包含requirements.txt文件管理Python依赖
2. requirements.txt文件 46:00
- 项目依赖管理:在非Docker项目中,requirements.txt是Python项目常见的依赖配置文件
- 文件内容:记录了项目所需的所有Python模块及其精确版本号
- 典型示例:
1)文件作用
环境重建:通过该文件可以在新环境中快速安装相同版本的依赖
版本控制:确保不同开发者使用完全一致的依赖版本,避免兼容性问题
使用方法
:
- 创建虚拟环境后执行pip install -r requirements.txt
- 全局环境安装需谨慎,建议使用虚拟环境
2)导出依赖
导出方法:使用pip freeze > requirements.txt命令可将当前环境所有安装包导出
注意事项
:
- 仅导出项目必要的依赖,避免包含无关包
- 导出版本号确保精确匹配
版本管理技巧
:
- 全局环境与虚拟环境可以安装不同版本
- 项目开发时应固定主要依赖版本
3)与Docker的区别
轻量级方案:相比Docker容器化,requirements.txt提供更轻量的环境配置方案
适用场景
:
- 快速分享Python项目依赖配置
- 不需要完整系统环境复现的场景
- 开发初期快速搭建环境
3. 问题答疑 47:34
1)全局环境与虚拟环境 47:51
环境区别
:
- 全局环境:通过pip install a=1.1.1安装的包对所有项目生效
- 虚拟环境:每个项目独立环境(如a=0.1.0),避免包版本冲突
项目实践:建议每个项目创建独立虚拟环境,防止不同项目间的依赖冲突
2)设置Python环境 48:27
环境查询
:
- 使用where python命令查看当前使用的Python解释器路径
- 第一个显示的路径即为当前激活环境
环境切换
:
- 在PyCharm中通过Settings > Project > Python Interpreter修改
- 可添加系统环境(System)或指定虚拟环境路径
配置选项
:
- System:全局Python环境
- Virtualenv:虚拟环境
- Conda:Anaconda环境
- Pipenv:Pipenv管理环境
操作步骤
:
- 点击”Add Interpreter”
- 选择环境类型
- 指定解释器路径(如D:\Python310\python.exe)
3)虚拟环境的使用 49:12
存储位置
:
- 默认路径:C:\Users\Administrator\llm_agent
- 包含不同项目的独立环境(如langchain、RAG等)
创建原则
:
- PyCharm一般使用全局环境
- 项目开发时需创建专属虚拟环境
- 通过venv或virtualenv工具创建
管理技巧
:
- 环境命名建议与项目名称关联(如langchain_env)
- 路径中应包含Scripts\python.exe可执行文件
- 激活后终端提示符会显示环境名称
最佳实践
:
- 开发时:使用项目专属虚拟环境
- 测试时:可切换至全局环境验证兼容性
- 部署时:通过requirements.txt固化依赖版本
4. VScode 51:24
主要用途:常被当作记事本使用,但实际是功能强大的代码编辑器
汉化设置
:
- 搜索安装”Chinese”插件实现汉化
- 默认英文界面,汉化后更易理解但可能影响准确性
插件推荐
:
- Code Runner:用于运行代码
- Python扩展:支持Python开发
- Jupyter支持:可运行.ipynb文件(但老师个人不推荐)
优势特点
:
- 插件生态丰富,支持多种语言
- 内存占用小,适合配置较低的设备
- 支持文件夹项目管理
使用建议
:
- 初学者可先汉化后逐步过渡到英文
- 虚拟环境设置需自行搜索配置
5. PyCharm 55:17
使用习惯:老师主要开发工具,已习惯英文界面
对比优势
:
- 专业Python IDE,功能更全面
- 但内存占用较大
汉化说明:支持汉化但不推荐,可能影响功能理解
6. Anaconda 55:38
适用人群:不推荐零基础学习者使用
主要问题
:
- 虚拟环境概念对新手较复杂
- 环境配置容易造成混淆
替代方案:建议初学者使用PyCharm或VS Code
7. 应用案例 59:01
1)例题:打印问题
- 题目解析
- 换行实现对比:
- 单引号/双引号需手动添加转义字符\n
- 三引号自动支持多行文本
- 本质区别:
- 都是字符串类型(str)
- 语法形式不同但功能等价
- 实际应用:
- 多行文本处理时三引号更便捷
- 简单字符串可使用单/双引号
- 换行实现对比:
2)例题:三引号作用 59:12
- 题目解析
- 核心功能:
- 实现多行字符串定义
- 避免频繁使用转义字符
- 类型验证:
- 使用type()检查均为str类型
- 使用场景:
- 长文本处理
- 文档字符串(Docstring)
- 核心功能:
需要保留原始格式的文本
- 注:本笔记已按照康奈尔笔记法结构化整理,保留了所有关键知识点、使用建议和对比分析,并确保与课程内容完全对应。对于代码运行环境配置等实操性内容,建议结合具体开发环境进行实践验证。
8. 在线编译器 01:00:34
1)MasterCode工具介绍
- 核心功能:提供在线Python代码编写和运行环境,无需本地安装
- 适用场景:适合初学者快速验证基础语法,解决环境配置问题
- 访问方式:通过网页直接体验,老师推荐的学习工具
- 版本信息:默认使用Python 3.9.x版本环境
2)基础操作指南
项目创建
:
- 新建项目时可自定义项目名称(如P007)
- 详情设置保持默认即可
文件管理
:
- 可删除默认生成的文件
- 支持新建.py文件(如demo.py)
代码执行
:
- 右键选择”Run”运行当前文件
- 支持通过顶部按钮运行主程序
3)AI辅助功能
代码解释
:
- 选中代码后点击”解释”获取AI分析
- 支持整段代码的逐行解释(如环境变量加载、实例化过程等)
注释生成
:
- 自动为方法添加功能说明文档
- 包含参数说明和返回值描述
- 用户可选择接受(Y)或拒绝(N)生成的注释
代码对话
:
- 可询问方法调用方式等具体问题
- 提供使用示例和返回结果说明
4)环境配置
模块安装
:
- 支持通过pip install安装第三方库
- 安装速度快(如openai 1.59.6版本)
系统限制
:
- 内存上限4GB
- 硬盘空间有限制
- 不适合运行大型项目
9. 问题答疑 01:12:05
1)虚拟环境问题
- 处理方案:将在正式课程中详细讲解虚拟环境创建和使用
- 应用场景:后续项目开发时会实际应用
2)程序员工作方式
开发流程
:
- 项目前期进行技术评审和框架选定
- 在确定的技术框架基础上实现需求
代码编写
:
- 传统开发以手写代码为主
- 固定代码段可采用复制粘贴
- 现代开发可结合AI辅助
岗位区分
:
- 开发、运维、设计等不同岗位工作内容差异大
- 不同编程语言有对应的专用框架
3)网页运行原理
- 课程关联:已在前期课程中多次讲解网页运行机制
- 框架学习:后续将学习LangChain等专业框架的使用
四、Streamlit使用指南 01:15:23
1. 运行方法
运行命令: 使用streamlit run命令运行项目,需先定位到项目目录
目录定位方法
:
- 在文件资源管理器中打开项目文件夹
- 通过cmd或终端进入项目目录
- 在PyCharm等IDE中,终端默认打开当前项目目录
2. 运行机制
自动启动: 运行后会默认打开浏览器显示界面
网络配置
:
- 使用本机IP地址
- 端口号由Streamlit自动分配
- 首次运行直接敲回车即可
3. 环境注意事项
Windows系统
:
- 用户名路径不要使用中文
- 项目路径避免包含中文字符
目录结构
:
- 项目应组织在单一文件夹内
- 打开最上层文件夹即可访问整个项目
4. Streamlit优势探究
作业要求
:
- 对比Streamlit与其他框架的区别
- 分析Streamlit的独特优势
- 研究为何选择Streamlit开发界面
5. 开发建议
调试技巧
:
- 通过与大模型对话解决编码问题
- 遇到问题时先分析错误信息
教学目的
:
- 重点掌握实际应用方法
- 理解问题解决思路比直接看结果更重要
五、知识小结
| 知识点 | 核心内容 | 考试重点/易混淆点 | 难度系数 |
|---|---|---|---|
| Python环境配置 | 全局环境与虚拟环境区别、jupyter notebook使用技巧 | 虚拟环境路径设置、不同系统命令差异(Win/mac) | ⭐⭐⭐ |
| 代码调试方法 | VS Code/PyCharm调试配置、在线编译器(MasterCode)使用 | 环境变量(.env)加载机制、浏览器兼容性问题 | ⭐⭐ |
| Python基础语法 | 数据类型/函数/面向对象三大知识模块 | 三引号字符串特性、递归函数理解 | ⭐⭐⭐⭐ |
| 大模型开发基础 | API密钥管理、Streamlit框架应用 | 代理设置、端点URL配置 | ⭐⭐⭐⭐ |
| 学习资源推荐 | B站基础教程、AI代码解释工具 | 官方文档与第三方资源取舍 | ⭐ |
| 项目部署实践 | requirements.txt文件作用、Docker基础概念 | 依赖版本冲突解决 | ⭐⭐⭐⭐ |
| 开发工具对比 | PyCharm社区版/专业版差异、Jupyter分段执行优势 | 内存占用优化、快捷键配置 | ⭐⭐ |
| 代码理解技巧 | AI辅助注释生成、多行代码解释方法 | 上下文关联分析 | ⭐ |
