从 PDFs 到视觉模型,从零样本智能体到语音交互仪表板,我将 2025 年的顶级 AI 工具融合成一个个人全栈开发引擎,彻底改变了我的开发方式。
1. 一切的起点:技术栈
我曾被各种工具淹没:
- • OCR 用一个库
- • 语音处理用另一个
- • 视觉模型再来一个
- • 嵌入、RAG、仪表板,每样都有单独的工具
于是,我做了每个不堪重负的开发者最终会做的事:统一它们。
这就是魔法的开始。
我的技术栈变成了:
- • 模型:openai、together、transformers
- • 文档输入/输出:PyMuPDF、docx、pytesseract
- • 嵌入:nomic-embed、sentence-transformers
- • 存储:weaviate、chroma、qdrant
- • 用户界面与音频:gradio、streamlit、whisper、elevenlabs
现在,我想构建的任何东西——几小时内就能完成原型。
2. 文档摄取引擎(PDF、图像、Word)
我构建的第一个东西?一个统一的文档摄取引擎。
复制from PyPDF2 import PdfReader import pytesseract from PIL import Image import docx defextract_text(file_path): if file_path.endswith(".pdf"): pdf = PdfReader(file_path) return"\n".join(page.extract_text() for page in pdf.pages) elif file_path.endswith(".docx"): doc = docx.Document(file_path) return"\n".join(p.text for p in doc.paragraphs) elif file_path.endswith((".jpg", ".png")): img = Image.open(file_path) return pytesseract.image_to_string(img) else: raise Exception("不支持的文件格式")
这让我的机器人能够从各种文档中提取知识。
3. 使用 nomic-embed-text-v1.5 嵌入一切
目前最好的开源嵌入模型?nomic-embed-text-v1.5。
复制from transformers import AutoTokenizer, AutoModel import torch class Embedder: def __init__(self): self.model = AutoModel.from_pretrained("nomic-ai/nomic-embed-text-v1.5") self.tokenizer = AutoTokenizer.from_pretrained("nomic-ai/nomic-embed-text-v1.5") def get_embedding(self, text): tokens = self.tokenizer(text, return_tensors="pt", truncatinotallow=True, padding=True) with torch.no_grad(): outputs = self.model(**tokens) return outputs.last_hidden_state[:, 0, :].squeeze().numpy()
这让我实现了对 PDF、聊天记录、图像(转换为文本)的语义搜索。
4. 使用 ChromaDB 构建知识库
我将所有内容存储在 Chroma 中——快速、本地、简单的向量存储。
复制import chromadb client = chromadb.Client() collection = client.get_or_create_collection("my_docs") def add_doc_to_store(doc_text, doc_id): vector = embedder.get_embedding(doc_text) collection.add(documents=[doc_text], ids=[doc_id], embeddings=[vector])
搜索只需一次调用:
复制def semantic_search(query): vector = embedder.get_embedding(query) return collection.query(query_embeddings=[vector], n_results=3)
现在我拥有了即刻可用的 RAG(检索增强生成) 存储。
5. 使用 OpenAI GPT-4o 实现多模态视觉 + 文本搜索
如果 PDF 包含图表或截图?我用 GPT-4o 的视觉能力。
复制import openai import base64 defimage_to_base64(path): withopen(path, "rb") as f: return base64.b64encode(f.read()).decode() defask_image_question(image_path, question): image_b64 = image_to_base64(image_path) messages = [ {"role": "user", "content": [ {"type": "text", "text": question}, {"type": "image_url", "image_url": {"url": f"data:image/png;base64,{image_b64}"}} ]} ] response = openai.ChatCompletion.create( model="gpt-4o", messages=messages ) return response.choices[0].message.content
它能:
• 总结图表
• 解读截图
• 提取幻灯片中的文本
一个 API,全面的图像 + 语言理解。
6. 使用 Together AI 智能体实现零样本工具使用
然后我玩得更大了。
Together AI 的零样本智能体 API 让我一次调用就能链接多个工具——爬虫、Python、浏览器、代码解释器。
复制import requests def call_agent(question): res = requests.post( "https://api.together.xyz/v1/chat/completions", headers={"Authorization": f"Bearer {TOGETHER_API_KEY}"}, jsnotallow={ "model": "zero-shot-agent", "messages": [{"role": "user", "content": question}] } ) return res.json()["choices"][0]["message"]["content"]
我问:
“使用公开数据源绘制巴基斯坦温度趋势图。”
它生成了 Python 代码,获取数据集,运行绘图——全搞定。
7. 使用 Whisper + ElevenLabs 实现语音接口
我想和系统“对话”。
• 输入:Whisper
• 输出:ElevenLabs
复制import whisper model = whisper.load_model("base") def transcribe(audio_path): result = model.transcribe(audio_path) return result["text"]
然后:
复制import requests def speak(text): res = requests.post( f"https://api.elevenlabs.io/v1/text-to-speech/{VOICE_ID}", headers={"xi-api-key": ELEVEN_KEY}, jsnotallow={"text": text} ) with open("out.mp3", "wb") as f: f.write(res.content)
我将两者接入 Gradio 接口。我用语音提问,它用语音回答。
感觉像科幻电影。
8. 用户界面:Gradio 仪表板,感觉像应用
最后一步——让它像个产品。
复制import gradio as gr def answer_from_voice(audio): transcript = transcribe(audio) answer = call_agent(transcript) speak(answer) return transcript, answer, "out.mp3" gr.Interface( fn=answer_from_voice, inputs=gr.Audio(source="microphone", type="filepath"), outputs=["textbox", "textbox", gr.Audio()] ).launch()
现在任何人都能用它:
• 语音交互
• 学习知识
• 扩展功能
9. 最终思考:我构建了一个 AI 操作系统
毫不夸张——这个设置成了我的 AI 操作系统。
我可以:
• 摄取文档
• 分析 PDF 和图表
• 让它写代码
• 让它用语音回答
• 连接任何东西
全用 Python 实现。
应用与助手的界限消失了。
凭借 GPT-4o、nomic、chroma、Together AI、whisper 等工具,我构建了一个感觉“活”的平台。
不仅仅是智能,而是:
• 实用
• 快速
• 互联
这一切始于一个想法:
如果我不再思考“应用”,而是思考“智能体”呢?
这就是 2025 年的 AI。