当前位置: 首页 > 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注入
  • 奥斯卡新规:评委必须看完影片再投票;网友:以前不是啊?
  • 擦亮“世界美食之都”金字招牌,淮安的努力不止于餐桌
  • 孕妇乘坐高铁突发临产,广西铁路部门协助送医平安产子
  • 中国人保不再设监事会,国寿集团未再设置监事长职务
  • 华夏银行一季度营收降逾17%、净利降逾14%,公允价值变动损失逾24亿
  • 京津冀“飘絮之困”如何破解?专家坦言仍面临关键技术瓶颈