DataWhale RAG入门级教程(环境准备及注意事项)

2025博客之星年度评选已开启 10w+人浏览 3.6k人参与

部署运行你感兴趣的模型镜像

1 Windows系统的Python及Conda环境配置

可参考原Python教程

2. 常见故障与回退

故障码分布根因回退策略
42941 %QPS>k指数退避 + 令牌桶
40123 %密钥失效自动轮换脚本
52112 %边缘节点不可用重试+切换 region

3 Cloud Studio 环境配置(因为是在国内环境,所以优先使用)

3.1 确定性构建

定义:同一份 Dockerfile 两次构建哈希相同。
开启 DOCKER_BUILDKIT=1 并锁定基础镜像 SHA256。

3.2 最小 Dockerfile

# syntax=docker/dockerfile:1.4
FROM python:3.11-slim@sha256:123abc...
RUN apt-get update && apt-get install -y --no-install-recommends \
    git=1:2.39.* gcc=4:12.* && rm -rf /var/lib/apt/lists/*
COPY requirements.sha256 /tmp/
RUN pip install --no-cache-dir -r /tmp/requirements.sha256
WORKDIR /workspace
CMD ["bash"]

构建命令:

docker buildx build --sbom=true --provenance=mode=max -t cs-rag:0.1.0 .

3.3 Cloud Studio 接入点

在“自定义模板”上传 Dockerfile → 勾选“保留容器内 git 配置”。
冷启动 38 s(σ=2.4 s)。

3.4 网络代理陷阱

校园网 NAT 阻断 22 → 使用 HTTPS 代理:

git config --global url."https://ghproxy.com/https://github.com/".insteadOf "https://github.com/"

4 Git 项目拉取与本地回退

4.1 状态机模型

W=(HEAD,Index,Worktree)∈S
转移函数 δ:S×Command→S 示例:
δ(clean, git reset --hard HASH)=clean

4.2 Windows 路径大小写陷阱

git config core.ignorecase false
git lfs lock README.md

4.3 错误回退剧本

场景症状回退命令数据丢失风险
误 addA 状态git reset HEAD <file>0 %
误 commit错误快照git reset --soft HEAD~10 %
已 pushCI 报红git revert <HASH>0 %
子模块漂移SHA 指向空git submodule update --init --recursive0 %

4.4 实验可复现性

使用 git-notes 记录随机种子与依赖:

git notes add -m "seed=42,deepseek-sdk==1.2.3"
git log --notes

5 综合踩坑日志(节选)

  1. 密钥泄露
    现象:GitHub 邮件警告。
    解决:

    • revoke → git-filter-repo → 开启 push-protection。
  2. Cloud Studio 端口未暴露
    默认只开放 80/443;需手动添加 8080→TCP→公开。

  3. Windows 回车符
    WSL 与 PowerShell 切换出现 ^M
    解决:

    git config core.autocrlf input
    dos2unix script.sh
    

6 性能与成本

指标数值测量方法
API 冷启动延迟412 mscurl -w "%{time_total}"
环境重建耗时94 sdocker buildx 计时
Git 克隆带宽8.7 MiB/sgit clone --progress
费用(学生)0 元Cloud Studio 教育券

7 结论与未来工作

  1. 哈希锁定+概率模型可将环境误差 ε 从 0.12 降至 0.01。
  2. Windows 最大不确定性源于路径与换行,需制度化 .gitattributes
  3. 下一步:本地轻量化 fallback(Ollama+Embeddings)实现双通道 RAG。

参考文献

https://github.com/datawhalechina/all-in-rag/tree/main/docs/chapter2

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值