- 图文/短视频素材搜索.
- 高效分析图文/短视频内容, 整合零散信息.
- 提供内容来源及图文短视频信息拆解, 通过内容卡片的方式呈现信息.
- 基于图文/短视频内容, 根据用户兴趣需求生成定制化搜索结果.
- 本地化部署, 可针对私有数据离线内容搜索问答.
目录树
QMedia 是一款开源的多媒体 AI 内容搜索引擎, 针对图文/短视频内容提供丰富的信息提取方式, 整合非结构化的图文/短视频信息, 构建多模态 RAG 内容问答. 希望以开源的方式分享交流 AI 内容创作 QMedia 目前正在积极开发中,有任何需求或者问题,欢迎提交 issues
碰撞内容创作新思路
加入我们的 Discord 社区! | |
---|---|
加入我们的 wechat 群聊 ! |
-
- 通过卡片的形式展示图文/视频内容
web 服务
借鉴小红书 web 版,基于 Typescript nextjs, tailwindcss, shadcn/ui 技术栈实现rag搜索/问答服务
,图文/视频模型服务
基于 python, LlamaIndex 应用程序的框架实现web 服务
,rag搜索/问答服务
,图文/视频模型服务
可分离部署单独使用, 方便根据用户资源情况灵活部署, 嵌入其他系统用于图文/视频内容提取.
-
- 图文/短视频素材搜索.
- 根据用户问题从图文/短视频内容提取有用信息, 生成高质量回答.
- 通过内容卡片的方式呈现内容来源, 及图文短视频信息拆解.
- 检索问答依赖对图文/短视频内容拆解, 包括图片风格,文案排版, 短视频文案转录, 视频总结等
- 支持 google 内容搜索
-
- 多种类型模型本地部署
- 与 rag 应用层分离, 便于替换不同模型
- 本地模型生命周期管理, 可配置手动或自动释放, 减少服务器压力
语言模型:
- 支持本地 ollama 不同模型切换
- llama3:8b-instruct 轻量级本地部署 LLM 模型
- llama3:70b-instruct 开源 llm 模型第八名
特征编码模型:
- 图片特征编码: CLIP Encoder 图片转为文本特征编码.
- 文本编码: BGE Encoder 多语言嵌入式模型, 文本转为特征编码, 本地模型对齐 gpt Encoder.
图片类模型:
- 图片文案 OCR 识别: Qanything 本地知识库问答系统 OCR
-
视觉理解大模型:
- llava-llama3: ollama 本地部署 GPT-4V Level 视觉理解模型
视频类模型:
- 视频文案转录:
- Faster Whisper: 快捷提取视频文案内容, 可本地 cpu 运行
- 基于 LLM 短视频内容总结
- 视频精彩片段识别
- 视频风格类型识别
- 视频分镜内容拆解
- 图文短视频内容分析, 爆款内容拆解
- 同款图文/视频搜索
- 卡片图文内容生成
- 短视频内容剪辑
QMedia 包含三组服务: 可根据资源情况选择同步部署本地, 或模型服务部署云端.
-
多模态模型服务
mm_server
:-
多模态模型部署及调用 API
-
Ollama LLM 模型
-
图片类模型
-
视频类模型
-
特征嵌入模型
-
-
AI 内容搜索问答服务
mmrag_server
:-
内容卡片展示查询
-
图文/短视频内容提取, 编码, 存储服务
-
多模态数据 rag 检索服务
-
内容问答服务
-
- web 服务
qmedia_web
: 语言: Typescript 框架: Next.js 样式: tailwindcss 组件: shadcn/ui
mm_server
+ qmedia_web
+ mmrag_server
web 网页内容展示, 内容 rag 搜索问答, 调用模型服务
- 服务启动流程:
# mm_server 服务启动
cd mm_server
source activate qllm
python main.py
# mmrag_server 服务启动
cd mmrag_server
source activate qmedia
python main.py
# qmedia_web 服务启动
cd qmedia_web
pnpm dev
- 可通过网页使用检索功能
mmrag_server
启动阶段会读取assets/medias
和assets/mm_pseudo_data.json
中的伪数据, 并且调用mm_server
提取图文/短视频的信息结构化为node
信息, 存储在db
中, 检索问答会根据db
中的数据进行.
# assets 文件结构
assets
├── mm_pseudo_data.json # 内容卡片数据
└── medias # 图片/视频文件
替换assets
中的内容, 并且删除历史存储的db
文件
assets/medias
为图片/视频文件, 可替换成自己图片/视频文件
assets/mm_pseudo_data.json
为内容卡片数据, 可替换成自己内容卡片数据, 运行服务后模型会自动提取信息, 存储在db
中
可单独使用 mm_server
本地图文/视频信息提取服务
当做独立的图片编码, 文字编码, 视频文案提取, 图片 OCR 服务, 通过 API 形式在任意场景使用
# 单独 mm_server 服务启动
cd mm_server
python main.py
# uvicorn main:app --reload --host localhost --port 50110
API 内容:
可配合 mm_server + qmedia_web, 在纯 python 环境下进行内容提取,rag 检索等 api 使用.
# 单独 mm_server 服务启动
cd mmrag_server
python main.py
# uvicorn main:app --reload --host localhost --port 50110
API 内容:
QMedia
is licensed under MIT License
Thanks to QAnything for strong OCR models.
Thanks to llava-llama3 for strong llm vision models.