如何构建自己的私密图片视觉搜索应用

# 如何构建自己的私密图片视觉搜索应用

现代智能手机用户对于视觉搜索并不陌生,它允许用户使用自然语言在照片中进行搜索。随着开源多模态大语言模型(LLM)的发布,如今您可以为自己的私人照片集构建类似的应用程序。这篇文章将指导您如何实现私密的视觉搜索和图片问答功能。

## 目的

本教程旨在介绍如何使用开源多模态LLM和嵌入模型实现对个人照片收藏的视觉搜索和问答,详细讲解实现步骤,并提供可用的代码示例。

## 主要内容

### 多模态LLM的选择

我们将使用一个开源的多模态LLM(例如`bakllava`)来为每张图片创建总结,嵌入并存储在`Chroma`中。为了生成图片总结和嵌入,我们采用`Ollama`模型。

您可以从以下地址下载Ollama模型:
- [Ollama下载地址](https://ollama.ai/)

同样,您可以从这里下载`bakllava`和`llama2:7b`嵌入模型:
- [Bakllava库链接](https://ollama.ai/library/bakllava)
- [Llama2库链接](https://ollama.ai/library/llama2:7b)

### 图像索引的创建

1. 准备好您要查询的图片集,存放在`/docs`目录中。
2. 运行以下命令创建图像索引:

```bash
poetry install
python ingest.py

这将使用本地bakllava模型对每张图片进行总结,并将总结嵌入到Chroma中。

查询与答案生成

当用户发出问题后,系统会根据用户输入与图片总结之间的相似性检索相关图片,并将这些图片传递给bakllava进行答案合成。

代码示例

# 在 server.py 中添加以下代码以启用视觉搜索功能
from rag_multi_modal_mv_local import chain as rag_multi_modal_mv_local_chain

add_routes(app, rag_multi_modal_mv_local_chain, path="/rag-multi-modal-mv-local")

常见问题和解决方案

网络访问限制

在某些区域,访问API可能会受到限制。在这些情况下,开发者可能需要使用API代理服务以提高访问的稳定性。例如,在设置API端点时,可以使用{AI_URL}作为API代理服务示例。

追踪和调试

如果需要对应用进行追踪和调试,可以配置LangSmith进行监控。请确保已注册并获取LangSmith的API密钥。

export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_API_KEY=<your-api-key>
export LANGCHAIN_PROJECT=<your-project>

总结与进一步学习资源

通过本教程,您应该能够创建一个功能齐全的私密图片视觉搜索应用。若想进一步提升您的应用,可以探讨更多的开源模型和嵌入方法。以下是一些推荐的学习资源:

参考资料

  1. Ollama AI 网站
  2. LangChain CLI
  3. FastAPI

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值