零成本复刻Deep Research!超越OpenAI Deep Research+DeepSeek R1!三分钟快速部署node-DeepResearch最强AI agent,由Jina AI打造!

🚀本篇笔记所对应的视频:零成本复刻Deep Research!超越OpenAI Deep Research+DeepSeek R1!三分钟快速部署node-DeepResearch_哔哩哔哩_bilibili

🚀OpenAI Deep Research简介:

OpenAI最近推出了Deep Research功能,通过自动化的多步骤互联网研究任务,生成全面的报告。

该功能利用最新的o3模型,能够分析和综合来自各种在线来源的数据,包括文本、图像和PDF。

用户只需提供一个提示,ChatGPT就会在10分钟内生成一份详细的报告。

Deep Research在Humanity's Last Exam基准测试中取得了26.6%的得分,显示了其在处理复杂研究任务方面的能力。

目前,Deep Research已集成到ChatGPT界面中,供美国的Pro订阅用户使用。

所以我们使用开源的Jina AI node-DeepResearch替代方案来复现Deep Research。

🚀Jina AI node-DeepResearch 简介

Jina AI 开发的 node-DeepResearch 是一个开源自动化研究工具,旨在通过搜索、阅读网页和推理,直到找到问题的答案。该项目适用于自动化信息检索和智能问答任务,结合了搜索引擎和大语言模型(LLM)来提高研究效率。

主要功能

  • 自动搜索和推理:使用搜索引擎查找相关网页,并通过大模型(如 Gemini)推理,生成最终答案。
  • 智能网页阅读:结合 Jina Reader,能够从网页提取关键内容,提升信息获取的精准度。
  • 可配置 API:用户可配置自己的 Gemini APIJina Reader API,以优化查询效果。

✅Jina AI node-DeepResearch GitHub仓库 https://github.com/jina-ai/node-DeepResearch

🚀环境配置

1️⃣Node.js配置

Windows用户只需要打开链接下载对应版本的Node.js安装包安装即可 链接:Node.js — Download Node.js®

Linux安装方式: curl -o- <https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh&

### Jina AI 的高级特性和深度学习集成 Jina 是一种基于云原生架构设计的开源神经搜索引擎,专注于非结构化数据处理和语义搜索。它通过结合深度学习模型来实现高效的索引、查询以及匹配功能[^1]。 #### 高级特性概述 Jina 提供了一系列强大的高级特性,这些特性使得开发者能够轻松构建复杂的神经搜索应用: - **流式 API**: 支持实时数据流传输,允许用户动态更新索引并即时获取结果。 - **分布式部署**: 利用 Kubernetes 和其他容器编排工具支持大规模集群环境下的弹性扩展能力。 - **模块化组件**: 用户可以根据需求自由组合不同的执行器 (Executor),从而定制专属的工作流程逻辑。 以下是关于如何利用 Python 实现基本文档检索的一个简单例子: ```python from jina import Flow, Document def index(): f = Flow().add(uses='jinahub+schemas://SimpleIndexer') with f: doc = Document(text="hello world") f.post(on='/index', inputs=doc) if __name__ == "__main__": index() ``` 此脚本展示了怎样创建一个简单的索引来存储文本信息,并可通过 POST 请求访问该服务端点 `/index` 来完成操作。 #### 深度学习集成 为了更好地服务于现代人工智能应用场景,Jina 已经无缝集成了多种主流框架用于训练自定义编码器模型或者加载预训练权重文件作为特征提取工具的一部分。例如 TensorFlow/Keras 或 PyTorch 可被用来开发新的 Encoder 并将其嵌入到整个系统当中去提升性能表现水平: ```python import torch.nn as nn from jina.executors.encoders import BaseEncoder class MyAwesomeTextEncoder(BaseEncoder): def encode(self, content: str, *args, **kwargs) -> 'ndarray': model = nn.Sequential( nn.Linear(len(content), 128), nn.ReLU(), nn.Linear(128, self.output_dim) ) output = model(torch.tensor([ord(c) for c in content]).float()) return output.detach().numpy() my_encoder = MyAwesomeTextEncoder(output_dim=64) result = my_encoder.encode('sample sentence.') print(result.shape) # Should be something like (1, 64) ``` 上述代码片段说明了如果要编写自己的文本编码类,则需继承 `BaseEncoder` 类型并且重写其方法以适应特定业务场景的要求;这里展示了一个非常基础版本的例子——采用两层全连接网络来进行字符级别转换得到固定长度向量表示形式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值