Skip to content

A semantic file retrieval application based on LLM(一个轻量级基于大模型解析的多模态文件语义检索工具,不同于传统基于文件名或metadata检索的方式,该工具可实现基于文件内容的语义检索,支持各类主流格式文档、图片、音频、视频。)

License

Notifications You must be signed in to change notification settings

SignitDoc/semantic-file-retrieval

Folders and files

NameName
Last commit message
Last commit date

Latest commit

489b9fd · Jan 15, 2025

History

18 Commits
Dec 18, 2024
Dec 18, 2024
Jan 15, 2025
Jan 15, 2025
Dec 17, 2024
Dec 18, 2024
Nov 27, 2024
Dec 26, 2024
Dec 26, 2024
Dec 26, 2024
Dec 26, 2024
Dec 17, 2024

Repository files navigation

文件语义检索

一个轻量级基于大模型解析的多模态文件语义检索工具,不同于传统基于文件名或metadata检索的方式,该工具可实现基于文件内容的语义检索,支持各类主流格式文档、图片、音频、视频。

Read this in English

架构

架构图

Demo

retrieve_image.mp4

快速开始

  1. 安装依赖
pip install -r requirements.txt
  1. 在项目根目录创建.env配置文件,配置OLLAMA_BASE_URL(使用本地ollama服务)或GLM_API_KEY(使用智谱AI开放平台服务)

  2. 运行项目

streamlit run main.py

Docker部署

  1. 使用项目自带的Dockerfile构建镜像
docker build -t semantic-file-retrieval:latest .
  1. 运行容器
docker run -d -e OLLAMA_BASE_URL="http://x.x.x.x:11434" -p 8501:8501 semantic-file-retrieval:latest

.env文件中的所有配置均可通过docker运行命令的环境变量参数覆盖

TODO

  • 支持音频
  • 支持视频
  • 支持扫描PDF文档
  • 支持Office文档(docx/xlsx/pptx)
  • 支持图搜图
  • 支持批量上传
  • 提供Restful API供集成到其他系统使用
  • 支持离线处理大文件(100M+)
  • 支持文件类型过滤
  • 同时支持传统检索(关键词匹配)和语义检索

About

A semantic file retrieval application based on LLM(一个轻量级基于大模型解析的多模态文件语义检索工具,不同于传统基于文件名或metadata检索的方式,该工具可实现基于文件内容的语义检索,支持各类主流格式文档、图片、音频、视频。)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published