LiteLLM 3步批量文本提取:从PDF到成本监控的完整链路

发布时间:2026/10/19 17:18:32
LiteLLM 3步批量文本提取:从PDF到成本监控的完整链路 LiteLLM 3步批量文本提取从PDF到成本监控的完整链路【免费下载链接】litellmThe fastest, litest AI Gateway. Rust core with Python SDK. Call 100 LLM APIs in OpenAI (or native) format with cost tracking, guardrails, load balancing, and logging [Bedrock, Azure, OpenAI, Anthropic, OpenAI, VertexAI, vLLM, Nvidia NIM]项目地址: https://gitcode.com/GitHub_Trending/li/litellm几百份PDF报告要人工读排期能拖到下周。LiteLLM 用统一的 OpenAI 格式接入 100 LLM API把批量文本提取与分析压缩成 3 步代码Bedrock、Azure、OpenAI 都不用再各写一套适配。环境就绪克隆仓库与一条安装命令我们只需要两条命令就能装好 SDK代理服务器包含在同一个包内git clone https://gitcode.com/GitHub_Trending/li/litellm cd litellm pip install -e .三步跑通提取管道第1步从PDF抽出纯文本import pypdf reader pypdf.PdfReader(quarterly_report.pdf) text \n.join(p.extract_text() or for p in reader.pages) # 逐页抽取第2步把长文本切成块# 源码参考: litellm/rag/text_splitters/recursive_character_text_splitter.py from litellm.rag.text_splitters.recursive_character_text_splitter import RecursiveCharacterTextSplitter splitter RecursiveCharacterTextSplitter(chunk_size1500, chunk_overlap100) chunks splitter.split_text(text) # 按段落→换行→空格逐级切分切块逻辑不是硬截断而是先按\n\n、再按\n递归拆分尽量保留语义边界。第3步批量LLM分析并记账import litellm out, total [], 0.0 for c in chunks: r litellm.completion( modelgpt-4o-mini, messages[{role: user, content: f提取关键事实与实体: {c}}], ) out.append(r.choices[0].message.content) total litellm.completion_cost(r) # 源码参考: litellm/cost_calculator.py print(f共{len(out)}块, 本次花费 {total})到这一步单进程链路已经可用抽取 → 切块 → 分析 → 拿到每块结果和总花费。上量从串行循环到代理并发循环跑 10 万块你会遇到两个问题速度以及中途想换模型要改代码。把路由交给代理参考仓库里的 proxy_server_config.yamlmodel_list里每个条目注册一个模型api_key字段支持os.environ/前缀从环境变量读取配置文件不落明文密钥。每个模型还能单独配rpm、timeout示例里是 480 rpm、300s 超时限流和熔断都有入口。启动后管理面板按请求记录审计日志谁在调哪个模型、花了多少钱逐条可查两个可直接取用的并发能力batch_completion接口默认max_workers100线程池见litellm/batch_completion/main.py代理层多模型负载均衡换供应商只改配置前缀openai/、bedrock/业务代码不动。接上Langfuse每个请求的token与成本可见在配置的litellm_settings里加一行success_callback: [langfuse]结构与 proxy_server_config.yaml 相同再设 Langfuse 的环境变量密钥即可。看板上能追踪单请求耗时、输入/输出 token 数、花费、失败原因。文本分析这种量大、单价低的任务靠的就是这类指标发现异常 chunk 的重复请求。需要更细的调用链span、自定义属性时可切换到 OpenTelemetry实现位于 litellm/integrations/otel/。⚠️ 避坑清单抽取文本为空 → 多为扫描版 PDF改走 OCR 摄入路径见 litellm/rag/ingestion/ 下的 vertex_ai、gemini 摄入器chunk_size 超出模型上下文窗口 → 块字数控制在窗口余量内8k token 级模型按 2000 字符起估密钥明文写进配置 → 一律用os.environ/前缀引用环境变量切块处语义断裂 →chunk_overlap设为 chunk_size 的 5%–10%没设预算批量任务花费失控 → 用completion_cost逐请求累加代理层配置max_budget硬上限换供应商要改业务代码 → 模型前缀写在配置里调用方只认 model_name 今日行动清单跑通上面三步管道先用一份真实 PDF 验证切块数量与总花费。照 proxy_server_config.yaml 写一份自己的代理配置启动后到审计日志里核对每条请求。接入 langfuse 回调确认 token 与成本指标入库再放量。【免费下载链接】litellmThe fastest, litest AI Gateway. Rust core with Python SDK. Call 100 LLM APIs in OpenAI (or native) format with cost tracking, guardrails, load balancing, and logging [Bedrock, Azure, OpenAI, Anthropic, OpenAI, VertexAI, vLLM, Nvidia NIM]项目地址: https://gitcode.com/GitHub_Trending/li/litellm创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询