instructor-embedding

GitHub
2k 157 简单 1 次阅读 6天前Apache-2.0开发框架其他语言模型
AI 解读 由 AI 自动生成,仅供参考

Instructor-embedding 是一款基于指令微调的文本嵌入模型,旨在用同一个模型灵活应对各类自然语言处理任务。传统嵌入模型通常针对特定任务(如分类或检索)单独训练,通用性较差;而 Instructor 通过引入“任务指令”,让用户只需在输入文本时附带简单的自然语言描述(例如“代表科学标题”或“用于检索重复句子”),即可动态生成适配该场景的高质量向量表示,无需重新训练或微调模型。

这一特性有效解决了多任务场景下模型部署成本高、适应性差的痛点。它在 70 多项 diverse 的嵌入任务中取得了业界领先的性能,涵盖分类、聚类、信息检索及文本评估等多个领域,尤其擅长处理跨域数据(如科研、金融等专业语境)。

Instructor-embedding 非常适合 AI 开发者、数据科学家及研究人员使用。对于需要构建搜索引擎、推荐系统或进行大规模文本聚类的团队,它能显著简化工作流程,降低维护多个专用模型的复杂度。其核心技术亮点在于“指令驱动”的泛化能力,将任务定义从代码逻辑转化为自然语言提示,使得模型能够像理解人类意图一样,按需定制输出结果,极大地提升了文本表示的灵活性与准确性。

使用场景

某医疗科技公司的数据团队正在构建一个跨科室的临床文献智能检索系统,需要让医生能通过自然语言快速找到高度相关的病例报告和研究论文。

没有 instructor-embedding 时

  • 任务适配成本高:面对“查找相似病例”和“筛选最新疗法”等不同需求,团队必须为每个特定任务单独微调模型,开发周期长达数周。
  • 领域泛化能力弱:在通用语料上训练的嵌入模型,难以理解医学专有名词的深层语义,导致心血管领域的查询常误匹配到骨科文献。
  • 指令感知缺失:模型无法区分用户是想“总结文章”还是“寻找反例”,只能机械地计算字面相似度,检索结果往往答非所问。
  • 维护负担重:随着业务扩展至金融合规等新领域,需重复训练多套模型,导致服务器资源紧张且版本管理混乱。

使用 instructor-embedding 后

  • 零样本任务切换:只需在输入时添加如“代表医学句子以检索重复项”的指令文本,instructor-embedding 即可立即适应新任务,无需任何额外训练。
  • 跨域语义精准:凭借指令微调机制,模型能准确捕捉“他汀类药物”在预防复发场景下的特定含义,显著提升了跨科室检索的准确率。
  • 意图动态对齐:通过改变指令前缀(如“用于聚类的科学标题”),instructor-embedding 能动态调整向量空间分布,完美契合分类、聚类或评估等不同目标。
  • 统一架构部署:仅需维护一个大模型即可覆盖公司所有业务线,大幅降低了算力成本和运维复杂度。

instructor-embedding 通过“一条指令适配任意任务”的特性,将原本繁琐的多模型训练流程简化为即插即用的文本提示,极大提升了垂直领域 AI 应用的落地效率。

运行环境要求

操作系统
  • 未说明
GPU

未说明 (代码支持通过 device 参数指定计算设备,默认使用系统默认设备,通常隐含支持 CPU 和 CUDA GPU)

内存

未说明

依赖
notes建议使用 conda 创建虚拟环境(示例命令为 python=3.7)。可通过 PyPI 安装 'InstructorEmbedding' 包或从源码安装。模型需从 Hugging Face 下载(提供 base/large/xl 不同尺寸)。编码时需注意输入格式为 [['指令', '文本'], ...]。
python3.7+
InstructorEmbedding
torch
transformers
sentence-transformers
instructor-embedding hero image

快速开始

一个嵌入器,适用于任何任务:指令微调文本嵌入

本仓库包含我们论文《一个嵌入器,适用于任何任务:指令微调文本嵌入》(arXiv:2212.09741)的代码及预训练模型。请访问我们的项目主页以获取项目的快速概览。

我们推出了Instructor👨‍🏫,这是一种经过指令微调的文本嵌入模型,能够根据任务指令生成针对任意任务(如分类、检索、聚类、文本评估等)和领域的文本嵌入(如科学、金融等领域),只需提供任务指令即可,无需额外微调。Instructor👨‍在70个多样化的嵌入任务上均取得了当前最优性能!

**************************** 更新 ****************************

  • 01/21:我们更新了代码结构,支持便捷的包安装。
  • 12/28:我们使用硬负样本更新了检查点
  • 12/20:我们发布了论文代码项目主页以及检查点。快来查看吧!

快速链接

安装

使用 INSTRUCTOR 进行任何文本嵌入都非常简单。您可以在Colab 笔记本中轻松试用。在本地机器上,我们建议首先创建一个虚拟环境:

conda env create -n instructor python=3.7
git clone https://github.com/HKUNLP/instructor-embedding
pip install -r requirements.txt

这将创建我们使用的 instructor 环境。要使用嵌入工具,首先从 PyPI 安装 InstructorEmbedding 包:

pip install InstructorEmbedding

或者直接从我们的代码中安装:

pip install -e .

环境设置

通过运行以下命令激活环境:

conda activate instructor

入门指南

首先下载一个预训练模型(完整可用模型列表见模型列表):

from InstructorEmbedding import INSTRUCTOR
model = INSTRUCTOR('hkunlp/instructor-large')

然后将句子和自定义指令提供给模型:

# 准备带有指令的文本对
text_instruction_pairs = [
    {"instruction": "表示科学标题:", "text": "3D ActionSLAM:多层环境中可穿戴式人物跟踪"},
    {"instruction": "表示医学句子以便检索重复句子:", "text": "近期研究表明,他汀类药物——一种在心血管疾病死亡率预防中广泛应用的药物——可能延缓或预防乳腺癌复发,但其对疾病特异性死亡率的影响尚不明确。"}
]

# 后处理
texts_with_instructions = []
for pair in text_instruction_pairs:
    texts_with_instructions.append([pair["instruction"], pair["text"]])

# 计算嵌入
customized_embeddings = model.encode(texts_with_instructions)

就这样完成了。我们现在得到了一组包含嵌入的 NumPy 数组。

for pair, embedding in zip(text_instruction_pairs, customized_embeddings):
    print("指令: ", pair["instruction"])
    print("文本: ", pair["text"])
    print("嵌入: ", embedding)
    print("")

encode 函数

用户只需使用 encode 函数即可:

model.encode( sentences,
              batch_size: int = 32,
              show_progress_bar: bool = None,
              output_value: str = 'sentence_embedding',
              convert_to_numpy: bool = True,
              convert_to_tensor: bool = False,
              device: str = None,
              normalize_embeddings: bool = False)
  • sentences:待嵌入的句子。格式应为 [["指令提示 0", "待嵌入文本 0], ["指令提示 1", "待嵌入文本 1], ...]
  • batch_size(默认:32):用于计算的批次大小,决定每批同时处理的句子数量。
  • show_progress_bar(默认:None):若设置为 True,编码过程中会显示进度条,直观地展示编码进度。
  • output_value(默认:'sentence_embedding'):指定所需的输出类型。默认值 'sentence_embedding' 返回句子嵌入;设置为 'token_embeddings' 则返回词元嵌入;设置为 None 则返回所有输出值。
  • convert_to_numpy(默认:True):若设置为 True,输出为 NumPy 向量列表;若设置为 False,则输出为 PyTorch 张量列表。
  • convert_to_tensor(默认:False):若设置为 True,函数将以堆叠张量的形式作为单一输出返回。此参数会覆盖 convert_to_numpy 的设置。
  • device(默认:None):指定用于计算的 torch.device。若未指定,则使用默认设备。
  • normalize_embeddings(默认:False):若设置为 True,返回的向量长度将归一化为 1,此时相似度搜索将使用更快的点积方法(util.dot_score),而非余弦相似度。

模型列表

我们发布了一系列不同规模的 INSTRUCTOR 检查点。您可以使用 InstructorEmbedding 包轻松加载这些模型。

模型 平均得分
hkunlp/instructor-base 55.9
hkunlp/instructor-large 58.4
hkunlp/instructor-xl 58.8

使用场景

以下我们提供了一些具体的使用场景。更多示例和应用,请参阅我们的论文

为自定义文本计算嵌入

如果您希望为特定句子计算自定义嵌入,可以按照统一模板编写指令:

                          表示用于 任务目标领域 文本类型

  • 领域 是可选的,用于指定文本所属的领域,例如科学、金融、医学等。
  • 文本类型 是必需的,用于指定编码单位,例如句子、文档、段落等。
  • 任务目标 是可选的,用于指定嵌入的目的,例如检索文档、分类句子等。

计算文本之间的相似度

您可以使用 INSTRUCTOR 来计算两组句子之间的相似度,并生成自定义嵌入

from sklearn.metrics.pairwise import cosine_similarity
sentences_a = [['表示科学领域的句子:','QCD物质中的部分子能量损失'], 
               ['表示金融领域的句子:','美联储周三上调了基准利率。']]
sentences_b = [['表示科学领域的句子:','耗散动力学中的手征相变'],
               ['表示金融领域的句子:','周五该基金上涨不足0.5%']]
embeddings_a = model.encode(sentences_a)
embeddings_b = model.encode(sentences_b)
similarities = cosine_similarity(embeddings_a,embeddings_b)

将自定义嵌入用于信息检索

import numpy as np
from sklearn.metrics.pairwise import cosine_similarity
query  = [['表示维基百科问题,用于检索支持性文档:','山药植物中食物储存在哪里']],
corpus = [['表示维基百科文档,用于检索:','资本主义自封建制度结束以来一直在西方世界占据主导地位,但大多数人认为[谁?]“混合经济”这一术语更准确地描述了大多数当代经济,因为它们同时包含私营企业和国有企业。在资本主义制度中,价格决定了供需关系。例如,对某些商品和服务的需求增加会导致价格上涨,而需求减少则会导致价格下降。'],
          ['表示维基百科文档,用于检索:',"公平住房法案下的差异影响理论尤其具有争议性,因为该法案规范了许多与住房、保险和抵押贷款相关的活动——一些学者认为,该理论在公平住房法案下的应用,加上社区再投资法案的扩展,导致了次级抵押贷款的兴起以及美国房地产市场的崩溃和随之而来的全球经济衰退"],
          ['表示维基百科文档,用于检索:','在美国劳动法中,差异影响是指在就业、住房等领域存在的做法,这些做法会以某种受保护特征为依据,对某一特定群体造成比其他群体更大的不利影响,即使雇主或房东所采用的规则表面上是中立的。尽管受保护的类别因法律而异,但大多数联邦民权法律都以种族、肤色、宗教、国籍和性别作为受保护的特征,有些法律还涵盖了残疾状况和其他特征。']]
query_embeddings = model.encode(query)
corpus_embeddings = model.encode(corpus)
similarities = cosine_similarity(query_embeddings,corpus_embeddings)
retrieved_doc_id = np.argmax(similarities)
print(retrieved_doc_id)

将自定义嵌入用于聚类

import sklearn.cluster
sentences = [['表示医学领域的句子,用于聚类:','霍瓦瓦-利夫希茨引力中的动力学标量自由度'],
             ['表示医学领域的句子,用于聚类:','低能区大气中微子通量计算的比较'],
             ['表示医学领域的句子,用于聚类:','大质量格罗斯-内韦模型中的费米子袋'],
             ['表示医学领域的句子,用于聚类:',"泰瓦特隆加速器上伴随t-tbar-H产生的QCD修正"],
             ['表示医学领域的句子,用于聚类:','R测量的新分析:粲夸克偶素更高能态矢量粒子的共振参数']]
embeddings = model.encode(sentences)
clustering_model = sklearn.cluster.MiniBatchKMeans(n_clusters=2)
clustering_model.fit(embeddings)
cluster_assignment = clustering_model.labels_
print(cluster_assignment)

训练

数据

我们构建了包含指令的多任务嵌入数据集(MEDI),该数据集由来自 Super-NI(Super-NaturalInstructions)、sentence-transformer 嵌入训练数据KILTMedMCQA 的 330 个数据集组成,涵盖了广泛的领域和任务。如果未提供正样本和负样本对,我们会自行构造,并以统一格式存储:

[
    {'query': ['表示用于检索相关文档的维基百科问题;', '大小谎言第二季有多少集'], 'pos': ['表示用于检索的维基百科文档;', '《大小谎言》(电视剧)获得了多项荣誉。它获得了16项艾美奖提名并赢得了8项,包括最佳限定剧集以及基德曼、斯卡斯加德和德恩的表演奖项。这三位演员还获得了金球奖,此外该剧还荣获了最佳迷你剧或电视电影金球奖。基德曼和斯卡斯加德也因其表演获得了美国影视演员协会奖。尽管最初被宣传为迷你剧,HBO还是续订了该剧的第二季。第二季的制作于2018年3月开始,预计将于2019年首播。全部七集均由凯利编剧'], 'neg': ['表示用于检索的维基百科文档;', '《小人物,大世界》第二季B部分的最后一集——“农场超载”。一群人围在躺在投石机旁地上的雅各布身边。第二季B的前两集聚焦于这起事故以及当地媒体对此事的反应。第一季《小人物,大世界》为TLC频道带来了稳定的收视率(尤其是在18至49岁这一重要人群中),从而促使该节目续订第二季。对该节目的评论总体上较为正面,称赞其对身材矮小人群的积极刻画。另一方面,也有评论认为该节目带有窥探性质'], 'task_id': 1}
    {'query': ['表示用于检索相关文档的维基百科问题;', '谁演唱了《等待像你这样的女孩》'], 'pos': ['表示用于检索的维基百科文档;', '《等待像你这样的女孩》\n《等待像你这样的女孩》是英国-美国摇滚乐队Foreigner于1981年发行的一首力量抒情歌曲。这首歌曲中标志性的合成器旋律由当时尚不知名的托马斯·多尔比演奏,这首歌也标志着乐队风格的重大转变:此前他们的单曲多为中快节奏的摇滚乐,而此曲则是一首更为柔和的情歌,同时兼具力量抒情曲的能量。它是专辑《4》(1981)中的第二支单曲,由卢·格拉姆和米克·琼斯共同创作。它已成为乐队最'], 'neg': ['表示用于检索的维基百科文档;', '《等待像你这样的女孩》曾连续九周力压奥莉维亚·牛顿-约翰的单曲《Physical》占据榜首,随后又在1982年1月30日被霍尔与欧茨的《I Can\'t Go for That (No Can Do)》挤下,保持了第十周的冠军位置。由于其在榜单上的持久表现,最终成为1982年百强单曲榜第19位的歌曲。这首歌是乐队当时最大的热门单曲,直到1985年《I Want to Know What Love Is》登顶为止。该歌曲在《公告牌》“史上百大歌曲”中排名第100位。《等待像你这样的女孩》\n《等待像一个女孩']], 'task_id': 1}
    ...
    {'query': ['表示用于检索相关文档的维基百科句子;', '我超爱甜味马提尼酒!'], 'pos': ['表示用于检索的维基百科文档;', '苹果马提尼\n苹果马提尼(简称Appletini)是一种含有伏特加以及一种或多种苹果汁、苹果酒、苹果利口酒或苹果白兰地的鸡尾酒。\n这种饮品最初被称为“亚当的苹果马提尼”,因为创造它的调酒师名叫亚当。它诞生于1996年位于西好莱坞的Lola's餐厅。\n这款名为“亚当的苹果”的饮品曾在1972年7月号的《花花公子》杂志内封面上由Smirnoff品牌进行广告宣传。配方要求使用大约一盎司的Smirnoff'], 'neg': ['表示用于检索的维基百科文档;', '本法案所描述的调味葡萄酒类饮料包括“调味葡萄酒基饮料”(非加强型)和“调味葡萄酒产品鸡尾酒”(混合型、酒精含量低于7%的低度饮品)。\n调味葡萄酒的种类。\n调味葡萄酒的种类——苦艾酒。\n苦艾酒是最常用的调味葡萄酒,因为它广泛用于调制鸡尾酒,并且拥有Martini和Cinzano等在全球范围内广为人知的知名品牌。苦艾酒有甜味和干味之分,颜色可以是红色、白色、粉色或橙色。传统上'], 'task_id': 300}
]

每个实例包含一个问题、一个正样本对、一个负样本对以及任务ID,任务ID用于确保同一训练批次中的数据来自同一任务。 MEDI 数据可通过此链接下载。

训练 INSTRUCTOR

我们提供了 INSTRUCTOR 的训练示例脚本。您可能需要先下载 MEDI 数据,解压缩文件夹并将 medi-data.json 放置在 --cache_dir 目录下。

python train.py --model_name_or_path sentence-transformers/gtr-t5-large --output_dir {输出目录 } --cache_dir { 缓存目录 } --max_source_length 512 --num_train_epochs 10 --save_steps 500 --cl_temperature 0.1 --warmup_ratio 0.1 --learning_rate 2e-5 --overwrite_output_dir

我们对各个参数说明如下:

  • --model_name_or_path:用于开始训练的预训练检查点。我们支持模型标识符(例如 sentence-transformers/gtr-t5-largesentence-transformers/sentence-t5-large)或检查点路径(例如由 transformers 训练器保存的检查点)。
  • --cl_temperature:对比损失的温度系数。
  • --cache_dir:用于缓存已下载模型和数据的目录。下载的 MEDI 数据(medi-data.json)应放置在 --cache_dir 目录下。
  • --output_dir:用于存储训练好的模型(检查点)以便评估的目录。

其余参数均为标准的 Huggingface's transformers 训练参数,例如 --overwrite_output_dir--num_train_epochs--learning_rate。更多详细信息请参阅 Huggingface transformers

评估

我们在70个多样化的任务上大规模评估INSTRUCTOR,这些任务涵盖了广泛的任务和领域。具体来说,我们的评估基于三个基准:MTEBBillboardPrompt Retrieval。以下我们将详细说明如何运行评估脚本。

MTEB

为了在MTEB基准数据集上评估模型性能,首先安装MTEB库:

cd evaluation/MTEB
pip install -e .

然后运行以下命令:

python examples/evaluate_model.py --model_name hkunlp/instructor-large --output_dir outputs --task_name ArguAna --result_file results

您可以通过指定--model_name来评估自己训练的模型检查点,并通过更改--task_name来运行所有的MTEB数据集。有关所有任务的评估指标,请参阅我们的论文MTEB基准

Billboard

要评估模型在Billboard上的性能,运行以下命令:

cd evaluation/text_evaluation
python main.py --model_name hkunlp/instructor-large --task mscoco --add_prompt

您可以通过指定--model_name来评估自己训练的模型检查点,并通过更改--task来运行所有的Billboard数据集。在Billboard的三个数据集中,我们都报告了皮尔逊相关系数。

Prompt Retrieval

要评估模型在Prompt Retrieval上的性能,运行以下命令:

cd evaluation/prompt_retrieval
python main.py --embedding_model hkunlp/instructor-large --task rte --model_cache_dir {cache_dir} --output_dir {output_dir} --add_prompt

您可以通过指定--model_name来评估自己训练的模型检查点,并通过更改--task来运行Prompt Retrieval数据集。为了保持一致的评价标准,我们将Prompt Retrieval中的所有任务统一转换为“文本到文本”的格式,并报告Rouge-L分数。

量化

要对Instructor嵌入模型进行量化,请运行以下代码:

# 导入模块
import torch
from InstructorEmbedding import INSTRUCTOR

# 加载模型
model = INSTRUCTOR('hkunlp/instructor-large', device='cpu')  # 您也可以使用GPU

# 对模型进行量化
qmodel = torch.quantization.quantize_dynamic(
    model, {torch.nn.Linear}, dtype=torch.qint8)

# 推理
sentence = "3D ActionSLAM: 可穿戴式多层环境人体跟踪"
instruction = "表示科学标题:"

embeddings = qmodel.encode([[instruction,sentence]])  
# 您也可以对嵌入进行归一化:normalize_embeddings=True 

print(f"量化后的嵌入:\n {embeddings}")

这会将模型大小缩小10倍,并且推理时间也会比普通模型更短 :)

遇到问题或有疑问?

如果您对代码或论文有任何疑问,请随时发送邮件至Hongjin(hjsu@cs.hku.hk)和Weijia(swj0419@cs.washington.edu)。请尽量详细描述问题,以便我们能够更快更好地帮助您。

引用

如果您觉得我们的工作有所帮助,请引用我们:

@inproceedings{INSTRUCTOR,
  title={一个嵌入器,适用于任何任务:指令微调的文本嵌入},
  author={Su, Hongjin and Shi, Weijia and Kasai, Jungo and Wang, Yizhong and Hu, Yushi and  Ostendorf, Mari and Yih, Wen-tau and Smith, Noah A. and  Zettlemoyer, Luke and Yu, Tao},
  url={https://arxiv.org/abs/2212.09741},
  year={2022},
}

INSTRUCTOR的其他应用

我们感谢社区为扩展INSTRUCTOR所做的努力!

相似工具推荐

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|今天
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

140.4k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

107.7k|★★☆☆☆|2天前
开发框架图像Agent

NextChat

NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。

87.6k|★★☆☆☆|昨天
开发框架语言模型

ML-For-Beginners

ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。

85k|★★☆☆☆|今天
图像数据工具视频

ragflow

RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。

77.1k|★★★☆☆|2天前
Agent图像开发框架