用途:为 LlamaFarm 的 RAG 组件提供框架特定的模式与代码审查清单,并扩展 python-skills,即所有 Python 最佳实践同样适用。
技术栈:Python 3.11+、LlamaIndex 0.13+、ChromaDB 1.0+、Celery 5.5+,嵌入支持 Universal/Ollama/OpenAI 等多种提供方。
目录结构:rag/ 下含 api.py(搜索与数据库 API)、celery_app.py(Celery 配置)、main.py(入口);core/ 含 base.py(Document、Component、Pipeline 抽象基类)、factories.py、ingest_handler.py、blob_processor.py、settings.py、logging.py;components/ 含 embedders、extractors、parsers、retrievers、stores;tasks/ 含 ingest_tasks、search_tasks、query_tasks、health_tasks、stats_tasks;utils/embedding_safety.py 提供熔断与校验。
核心模式:Document 数据类含 content、metadata、id、source、embeddings;Component 抽象基类定义 process 方法;RetrievalStrategy 定义 retrieve 与 supports_vector_store;Embedder 内置 CircuitBreaker,默认失败阈值 5、重置超时 60 秒,支持 fail_fast。
审查清单:LlamaIndex(中优先级)关注分块配置、元数据保留、不支持格式的错误处理;ChromaDB(高优先级)关注线程安全客户端访问、距离度量选择、元数据类型兼容;Celery(高优先级)关注任务路由到正确队列、带上下文的错误日志、正确序列化;性能(中优先级)关注嵌入批处理、去重、适当缓存。
限制:资料未提供安装命令、收费与价格、具体平台支持范围及实际效果数据。