Skip to content

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

demos_basic

这是一组 LangChain 学习 demo,目标是把从“提示词”到“RAG、Agent、Callback、Runnable 进阶”的常见能力串起来。

技术说明

  • LCEL:LangChain Expression Language,用 | 把 prompt、model、parser、tool 串成管道。
  • Prompt Template:把固定提示词和变量拆开,方便复用和维护。
  • Memory:保存对话上下文,让模型记住前文。
  • Output Parser:把模型输出转成结构化数据,比如 JSON、Pydantic 对象、列表。
  • RAG Ingest:把文档读取、切块、做 embedding、存入向量库。
  • RAG Chain:先检索文档,再让模型基于文档回答。
  • Tools / Agent:让模型能调用工具,必要时执行函数或查询外部信息。
  • Callback:观察链路执行过程,记录开始、结束、流式 token 和错误。
  • Runnable 进阶:演示透传、并行、分支、后处理等更灵活的管道组合。

Demo 目录

  • demo01_lcel_basics.py:讲 prompt | llm | parser 这种最基础的 LCEL 管道。
  • demo02_prompt_template.py:讲如何把提示词模板化,复用变量和消息历史。
  • demo03_memory.py:讲如何保存和压缩对话记忆,避免上下文丢失。
  • demo04_output_parser.py:讲如何把模型输出稳定地解析成 JSON、Pydantic 和列表。
  • demo05_rag_ingest.py:讲如何把文档入库到 Chroma,形成可检索的知识向量。
  • demo06_rag_chain.py:讲如何把检索到的文档喂回模型,完成 RAG 问答。
  • demo07_tools_agent.py:讲如何让 Agent 根据问题选择并调用工具。
  • demo08_callbacks.py:讲如何观察链路运行过程,以及普通调用和流式调用的区别。
  • demo09_runnable_advanced.py:讲 Runnable 的透传、并行、分支和后处理能力。
  • demo10_api_service.py:讲如何用 FastAPI + Uvicorn 把 LangChain 链路封装成可调用 API(普通 + 流式)。

环境准备

uv pip install -r requirements.txt

如果你用的是本地 Ollama embedding:

ollama pull qwen3-embedding:0.6b
ollama serve

项目文件

  • requirements.txt:Python 依赖清单。
  • pyproject.toml:项目元数据和依赖配置。
  • .gitignore:在仓库根目录 /Users/kunyashaw/lobsterai/project/.gitignore,用来忽略虚拟环境、缓存、.env 和生成的数据。

运行说明

直接运行任意 demo 文件即可,例如:

./.venv/bin/python demo05_rag_ingest.py

备注

如果新增了依赖,请同步更新:

  • requirements.txt
  • pyproject.toml

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages