当前位置: 首页 > news >正文

AI之FastAPI+ollama调用嵌入模型OllamaBgeEmbeddings

以下是对该 FastAPI 代码的逐行解析和详细说明:


代码结构概览

from fastapi import Depends  # 导入依赖注入模块def get_embedder():return OllamaBgeEmbeddings(base_url="http://ollama-cluster:11434",timeout=30,max_retries=5)@app.post("/embed")
async def embed_text(text: str,embedder: OllamaBgeEmbeddings = Depends(get_embedder)
):return {"embedding": embedder.embed_query(text)}

逐行代码解析

1. 依赖项定义
def get_embedder():return OllamaBgeEmbeddings(base_url="http://ollama-cluster:11434",timeout=30,max_retries=5)
  • 功能:创建并返回一个 OllamaBgeEmbeddings 实例
  • 关键参数
    • base_url:Ollama 服务集群地址(可以是负载均衡器地址)
    • timeout=30:请求超时时间(秒)
    • max_retries=5:失败请求最大重试次数
  • 设计意图
    将嵌入器的初始化逻辑封装为可复用的依赖项,实现配置集中管理

2. 路由定义
@app.post("/embed")
async def embed_text(text: str,embedder: OllamaBgeEmbeddings = Depends(get_embedder)

相关文章:

  • 用 ESP32 模拟 Wiegand 刷卡器:开发门禁系统必备的小工具
  • C++入门小馆: 深入了解STLlist
  • 【金仓数据库征文】-不懂数据库也能看懂!一文解析金仓技术介绍以典型应用
  • 电子病历高质量语料库构建方法与架构项目(数据遗忘篇)
  • Redis 集群切片全解析:四种常见技术的原理、优劣与应用
  • 【MQ篇】RabbitMQ的消费者确认机制实战!
  • HTML word属性
  • 文档驱动:“提纲挈领”视角下的项目管理中枢构建
  • SpringBoot 学习
  • 2025 Java 开发避坑指南:如何避免踩依赖管理的坑?
  • 【Linux网络编程】应用层协议HTTP(实现一个简单的http服务)
  • 粒子群优化算法(Particle Swarm Optimization, PSO)的详细解读
  • 项目质量管理
  • Cancer Cell发表医学AI综述,聚焦于人工智能与转化癌症研究的交叉领域
  • exec和spawn
  • 软件工程效率优化:一个分层解耦与熵减驱动的系统框架
  • 系统思考:看清问题背后的结构
  • 无人售货机系统对接全流程拆解,4 步教你搭建私有化系统
  • Canvas入门教程!!【Canvas篇二】
  • JDBC之ORM思想及SQL注入
  • 解放军仪仗司礼大队参加越南纪念南方解放50周年庆典活动
  • 韩国京畿道骊州市市长率团访问菏泽:想和菏泽一起办牡丹节
  • 中科院新增三名副秘书长
  • 上海咖啡消费有多“嗲”?咖啡馆已逾9000家,咖啡节主市集持续4天
  • 牛市早报|特朗普称或将“大幅降低”对华关税,外交部回应
  • 停止水资源共享、驱逐武官,印度对巴基斯坦宣布多项反制措施