AI开源领域特定数据生成解决方案
Augmentoolkit是一款开源AI工具,专门用于创建领域特定数据。它能将原始文本高效转化为高质量自定义数据集,适用于训练语言模型和分类器。该工具利用开源AI技术,无需依赖OpenAI,提供了易用、可定制和经济的数据生成方案。Augmentoolkit致力于简化LLM数据创建,使其成为模型开发中的便捷环节。
您的定制LLM需要定制数据。Augmentoolkit可快速、廉价、轻松地创建高质量数据。
现在您可以使用开源AI将任何原始文本转换为用于训练新LLM(或分类器)的高质量自定义数据集。使数据收集成为模型创建过程中的轻松步骤。Augmentoolkit是易用、可定制、开源且经济高效的数据生成解决方案。无需OpenAI。
Augmentoolkit是一个AI驱动的工具,可让您使用开源AI创建特定领域的数据。
Augmentoolkit现在可以在自定义数据上训练小型分类模型 — 在CPU上。基本上:
我使用这个流程在IMDb数据集上训练了一个情感分析distilbert模型,没有使用人工标签。它获得了88%的准确率 — 仅比使用人工标签训练的模型低约5%。
所以一个点击按钮就能运行的脚本几乎达到了斯坦福NLP艰苦努力的相同结果。这就是这个新流程的预期效用。
使用这个流程创建模型的成本可能只有一两美元,如果有的话。每个分类器的成本不到一杯咖啡。大规模制作分类器,让规模数据为您所用。
分类器创建器(名称可能会更改)的目标是使大规模数据分类和组织变得轻而易举。分类器通常被机器学习社区中更硬核的成 员使用,现在有了Augmentoolkit,您可以大规模创建它们。
要开始使用,请修改classifier_trainer_config.yaml
并运行classifier_trainer_processing.py
!
好了,回到您定期安排的README。
Augmentoolkit让LLM数据变得简单。
我们还尽最大努力促进生成数据后的步骤 -- 训练您的LLM:
最后,使用您创建的模型应该简单且有价值:
Augmentoolkit现在还可以构建分类器。它们比LLM数据更便宜、更快,而且可以在本地计算机上训练。
请注意,视频文档目前是为Augmentoolkit构建的,Augmentoolkit是为Verus社区构建的Augmentoolkit的姐妹项目。运行过程应该是相同的,训练LLM的过程肯定是相同的。但当提到"Augmentoolkit"和Verus项目时,这就是原因。
Augmentoolkit特定的视频文档正在制作中。
安装依赖后:
pip install -r requirements.txt
)config.yaml
config.yaml
内的相关字段中。务必保留引号。推荐:Together.ai与Hermes Mixtral作为LARGE_LOGICAL_MODEL和LOGICAL_MODEL效果非常好。python processing.py
并回车(启动脚本版本)。pip install -r requirements.txt
)raw_txt_input
文件夹的绝对路径export GRADIO_TEMP_DIR=<raw_txt_input_absolute_path>
python app.py
我与希望使用大量优质训练数据创建(或改进)专业大语言模型的初创公司和企业合作。您的企业需要AI数据集吗?或者您想将您自己拥有的AI模型应用到通用模型难以处理的领域吗?我很乐意帮助您轻松创建这种定制AI,以及用于构建更多此类AI的文档化工具。鉴于我创建了这个项目的原始版本,我可能是完成这项任务的最佳人选。您可以通过这个Calendly链接安排一个简短的通话,与我讨论您的需求:https://calendly.com/evanpeterarmstrong/discovery-call。
注意:Augmentoolkit的基础版本是完全开源的,采用MIT许可。咨询选项适用于那些想要快速获得定制修改和高质量结果的人(我花了5个月的学习和迭代才掌握开源模型管道,并在我现有的机器学习经验基础上使Augmentoolkit运作良好)。如果您是业余爱好者,有时间尝试其基础版本用于休闲或个人用途,那就尽管去做吧!
数据集创建一直是微调创建过程中最痛苦且最重要的步骤。 大多数人不得不求助于以下两种方法之一:A)消耗大量OpenAI API积分,或B)花费几十甚至上百个小时,根据您与机器人的对话累积混合数据集。OpenAI方法基于付费服务(您违反了其服务条款),它随时可能将您封禁,其写作风格您可能讨厌,而且每个月都在变差,其合成数据严重缺乏多样性。手写示例太慢,无法迭代,而且根本无法扩展,这意味着您错过了随数据增加而带来的巨大潜在性能提升。如果您是一家公司,为批量创建示例付费,那么可能比OpenAI还要昂 贵 - 同样完全无法扩展。而且,如果我们真的在创造能写作的机器,为什么我们还要花大部分时间写作呢?
Augmentoolkit旨在使高质量数据生成变得简单、快速、可共享、可配置,并适用于所有人。它旨在轻松创建关于任何以纯文本形式存在的知识的数据集。 它旨在让模型能够为自己生成额外的训练数据。它旨在让任何爱好者,无论计算能力如何,都能通过廉价生成大量数据来为AI的进步做出贡献。它旨在通过使数据收集变得像运行脚本一样简单来扩展可以构建的微调模型的可能性。无论您是在微调公司聊天机器人以理解您公司的信息,还是在创建能解释您使命和目标的社区AI大使,或者在做其他完全不同的事情,Augmentoolkit的存在都是为了让您的数据问题变得不那么棘手。
我们将使数据集创建成为创建新的大语言模型过程中最愉快、最强大和最灵活的部分。
目前您可以:
Augmentoolkit主要操作(问答生成)的流程图可以在使用部分找到。关于分类器创建的信息可以在分类器部分找到。
高层概述(对于Augmentoolkit的主要操作形式)是:输入书籍或手册,输出信息丰富的对话。用这些对话训练模型,它就学会了谈论这些信息。广泛的验证将幻觉保持在最低限度。与持续预训练相结合,可以教导模型谈论特定领域。
更深入和专业的解释: Augmentoolkit接受包含信息的人工编写文本,并将其转化为指令调优数据。基本上,它使用大语言模型将预训练数据转换为对话式多轮问答数据:
然而,数据集生成不仅仅是关于问答。**Augmentoolkit已经扩展到能够从头开始训练分类器,**使用未标记的文本。只需向Augmentoolkit提供一些文本和一些类别的描述,您就能得到一个高质量的分类器,能够以真正大规模廉价处理数据。在分类器部分阅读更多关于分类器创建的信息。
首先,将仓库克隆到您的计算机上:
git clone https://github.com/e-p-armstrong/augmentool.git
然后,安装项目的依赖项。
pip install -r requirements.txt
您可能会收到一些消息,说torchvision和torchaudio需要较旧版本的Pytorch。这应该可以安全忽略。
如果您想在代码中使用Aphrodite,您还需要添加
pip install aphrodite-engine
但是,建议只在另一个窗口中运行您正在使用的本地推理引擎,并将其API端点放在config.yaml中,而不是使用内置的aphrodite模式。这种模 式现在可以被认为是过时的。
注意:对于大规模数据集生成,在Vast.ai或Runpod等服务上租用每小时几美元的GPU可能比使用Together.ai等API更具成本效益。然而,API更快且几乎不需要设置。因此,目前建议的流程是:使用API进行实验,使用租用的计算资源进行生产。
我将很快制作一个使用Augmentoolkit进行本地数据集生成的视频教程。
如果输出文件夹不为空,Augmentoolkit会继续之前开始的运行。如果您不是试图继续中断的数据集生成,请重命名或移动它。
您可以通过修改config.yaml
轻松自定义Augmentoolkit的特定运行方式。WebUI也有能力自定义设置。让我们逐一浏览YAML文件中的每个字段,以便您了解如何根据需要进行更改:
首先是API部分:
API:
API_KEY: 在此处输入您的密钥
BASE_URL: https://api.together.xyz
LARGE_LOGICAL_MODEL: meta-llama/Llama-3-70b-chat-hf
LOGICAL_MODEL: meta-llama/Llama-3-70b-chat-hf
QUANTIZATION_SMALL: "gptq"
QUANTIZATION_LARGE: "gptq"
逐个字段解释:
API_KEY
这是您放置喜欢的API提供商的API密钥的地方。如果您正在运行本地服务器,请在此处放置一个虚拟值,以便请求的格式不会破坏。BASE_URL
这是您使用的API提供商的基本URL。一些可能的值:
LARGE_LOGICAL_MODEL
您想使用的大型模型的名称。这个模型将用于最后的生成步骤。这应该是一个相当强大的模型。用于驱动Augmentoolkit的模型被分为两个模型,以在管道早期的较简单步骤中节省成本。(如果您使用的是本地服务器,这个字段可能无关紧要。)LOGICAL_MODEL
您想用于前几个生成步骤的模型的名称。它可以是一个相当便宜的模型,但更强大的模型仍会产生更好的最终输出。QUANTIZATION_...
如果您在Aphrodite模式下运行,请更改这些。方法(例如,"gptq","awq")必须与所使用的模型量化类型匹配。_SMALL
设置LOGICAL_MODEL
的量化类型,而_LARGE
设置LARGE_LOGICAL_MODEL
的类型。**如果Augmentoolkit不处于Aphrodite模式,这个设置不起作用,可以忽略(无论如何,aphrodite模式已经过时,因为作为本地服务器运行比使用其代码更好)。
接下来是 PATH
部分:PATH:
INPUT: "./raw_text_input_vision_paper"
OUTPUT: "./output"
DEFAULT_PROMPTS: "./prompts"
PROMPTS: ./prompts_vision_paper
逐项说明:
INPUT
是存储原始文本输入的文件夹的相对路径。这个文件夹包含你想要作为管道输入的文本文件。文件可以是任何格式,部分文件甚至可以嵌套在子文件夹中,因此在处理新的数据源时几乎不需要进行清理工作。OUTPUT
是存储管道输出的文件夹的相对路径。这个文件夹将包含由管道生成的数据集文件(.jsonl),以及一个配套的持续预训练数据集。中间生成的内容(用于调试或可解释性)也会存放在这里。DEFAULT_PROMPTS
是存储 Augmentoolkit 核心提示的文件夹的相对路径。这个文件夹包含整个管道中使用的提示文件。如果在 PROMPTS
文件夹中找不到提示,Augmentoolkit 将使用 DEFAULT_PROMPTS
作为备用文件夹。PROMPTS
是存储当前运行 Augmentoolkit 所用提示的文件夹的相对路径。与 DEFAULT_PROMPTS
相比,PROMPTS
本质上是一个覆盖:如果在 PROMPTS
文件夹中找到了提示,它将被使用,而不是 DEFAULT_PROMPTS
文件夹中同名的提示。这允许你为原始提示可能不太适合的新类型输入数据创建不同的提示。参见 prompts_code_override
和 prompts_vision_paper_override
以了解如何使用。接下来是 SYSTEM
部分:
SYSTEM:
CHUNK_SIZE: 1900
USE_FILENAMES: False
COMPLETION_MODE: false
CONCURRENCY_LIMIT: 60
DOUBLE_CHECK_COUNTER: 1
FINAL_ASSISTANT_PROMPT_NO_RAG: |
你是一个乐于助人、友好的AI助手。
FINAL_ASSISTANT_PROMPT_RAG: |
你是一个乐于助人、友好的AI助手。
上下文信息如下:
----------------------
{data}
MODE: api
STOP: true
SUBSET_SIZE: 10
USE_SUBSET: true
逐项说明:
CHUNK_SIZE
是将通过管道传递的文本"块"的最大字符数。一个块是生成问题的基础 —— 它是 Augmentoolkit 构建的问答数据集的核心构建块。USE_FILENAMES
决定了AI在生成问题时是否允许看到每个文本/信息块所来自的文件名。如果开启,问题可能经常会采用"根据文件Y,X是什么?"的格式。如果你的文件是书籍,这可能很有用 —— 例如,你可能会得到"根据OSS的《简单破坏》,如何破坏一辆汽车?"而如果关闭,问题可能只是"如何破坏一辆汽车?"如果你希望机器 人有一些元知识,这很好,但通常应该关闭。如果你希望AI知道文件的作者,那么将名称格式化为"文本名称,作者名称"。逗号很重要。COMPLETION_MODE
是一个布尔值,决定是以聊天模式(默认,设置为 false
时)还是完成模式(设置为 true
时)向提供者发送提示。完成模式可能在某些模型上产生更高质量的响应,但许多提供者不支持它。CONCURRENCY_LIMIT
是一个整数;它是可以向提供者同时发出的最大请求数。这对于控制成本和防止频率限制很有用。DOUBLE_CHECK_COUNTER
是一个整数;它是管道将对生成的问题进行双重检查的次数。对于每个问答对,采取多数票:如果是正面的,保留问答对;如果是负面的,丢弃问答对。平局则丢弃。这是一个权衡参数:更高意味着更高质量但成本远高。3是一个好的起点。FINAL_ASSISTANT_PROMPT_NO_RAG
是用于控制最终生成的数据集形式的设置。你在这里写的内容将成为数据集中不使用RAG支持输出部分的AI系统提示。这是我们让LLM依赖我们教授的知识的地方。FINAL_ASSISTANT_PROMPT_RAG
与其NO_RAG表亲类似,但用于数据集中使用RAG支持输出的部分。这是我们让LLM结合理解和检索信息来产生答案的地方。一个关键区别:{data}
出现的地方,它将被数据集中每个样本的RAG上下文替换。所以将它放在你希望上下文出现在提示中的位置。MODE
是管道将运行的模式。api
是默认模式,用于运行支持OpenAI标准的API的管道。也支持 cohere
,用于运行Cohere API的管道(在 cohere
模式下BASE_URL无效)。STOP
是一个布尔值,决定管道是否使用停止标记。除非你使用的API 任意限制了可以使用的停止标记数量(如OpenAI),否则你应该始终将其设置为 true
。SUBSET_SIZE
控制如果USE_SUBSET开启时通过管道传递的块数。这对于快速和低成本地调试和测试很有用 —— 只会处理前 SUBSET_SIZE
个块。USE_SUBSET
是一个布尔值,决定管道是否使用输入数据的子集。注意:
SKIP:
QUESTION_CHECK: False
ANSWER_RELEVANCY_CHECK: True # 如果使用负面问题提示覆盖,则开启
这让你可以控制是否想跳过管道的某些步骤。在任何情况下,通常都不应该跳过QUESTION_CHECK,但如果你使用"负面"提示覆盖(默认位于 ./prompts_override_negative_question
),则可以跳过ANSWER_RELEVANCY_CHECK。因此,如果你想简单地跳过相应的步骤,就开启其中任何一个。这些选项允许一定程度的控制流控制,而无需触及代码。
新功能!
分类器创建器让你能在几分钟内训练一个完整的分类模型。生成可以在本地或通过API完成,而模型训练则在CPU上本地完成(分类器训练就是这么简单!)
什么时候你需要一个分类器?也许你想浏览一个数据集并将数据分类为"高质量"或"低质量",然后只训练高质量的数据。或者,你可能想为一个应用程序制作一些自定义审核。又或者,你可能想在大量文本中搜寻特定类型的信息。分类器是老派的,但它们仍然很酷,而且出人意料地有用。
以下是运行它的方法(快速入门)。
pip install -r requirements.txt
然后,修改 classifier_trainer_config.yaml
以包含正确的API密钥和基本URL。
接着,从Hugging Face下载IMDb数据集:
并将其放入 classifier_trainer_config.yaml
文件指向的"input"文件夹中。
然后运行:python classifier_trainer_processing.py
这个新管道的提示可以在 prompts_classifier
中找到。
大多数 config
设置与普通的Augmentoolkit相同,但以下是不同之处:
LOGICAL_MODEL
在此流程中,LOGICAL_MODEL 负责大部分用于构建自定义分类器训练数据的分类工作。像 Llama 3 8b 这样的模型效果很好。
LARGE_LOGICAL_MODEL
用于:1) 创建 LLM 分类器遵循的"规则"(基于您对任务的描述和类别含义)。大型逻辑模型还用于在模型评估阶段进行分类,以确保分类器质量高,不只是学习小型模型的愚蠢行为。
在 SYSTEM
标题下的 REQUIRED_ACCURACY: 0.90
,这个字段(小于1)是训练后的分类器模型必须"正确"(与 LLM 分类相比)的分类百分比,以通过并跳出持续改进循环。根据您选择的分类器模型和任务,您可能需要将其设置得稍低一些——有些可能相当小。
CLASSIFICATION
CLASSES
是一个字符串列表,包含模型将用于对文本进行分类的类别名称。例如,["negative", "positive"]
。这些在实际训练数据中将分别显示为 0
和 1
。此流程的早期版本仅支持二元分类(2个类别),但它的构建方式使得未来添加更多类别相对容易,所以请期待这一功能的到来。DESC
是一个描述类别含义的字符串。比如 "分类文本(电影评论)是正面还是负面。"
或 "文本是否表达了积极或消极情绪。"
或 如果文本明显是元数据、目录、出版信息、版权信息——任何不是书籍或文章实际内容的部分,将其分类为元数据。如果明显是有实际意义的内容,将其分类为内容。如果包含两者,则分类为元数据。
PREDICT_ON_WHOLE_SET_AT_THE_END
是一个布尔值,决定是否在最后对整个输入文本运行新训练的分类器。如果您向 Augmentoolkit 提供的数据与您最终想要分成两个不同类别的数据相同,请打开此选项。TRAINING:
MODEL_PATH
是您想要训练分类器的 Hugging Face 模型路径。此流程在 distilbert-base-uncased
上经过测试。TRAIN_SET_SIZE
首次训练运行要采用的块数。一个不错的默认值是 500。TRAIN_SET_INCREMENT
每次分类器未能匹配 LLM 性能时要添加的新块数。TEST_SET_SIZE
评估新分类器性能与 LLM 对比时采用的测试样本数。分类器与 LLM 一致的次数决定准确率分数。TRUNCATION_TYPE
某些块对于分类器模型的上下文长度来说太大。因此您可以进行截断。选项有:head-tail(取前几个 token 和末尾的一堆 token);end truncation(切断块大小末尾不适合的多余内容)MAX_ITERS
为避免陷入无限花钱循环,在这里设置一个整数,标记将执行的数据生成+训练运行的最大次数。请注意,分类器创建器比 Augmentoolkit 便宜得多,所以这个值可以设置得相当高而无需担心。5注意,分类器创建器还可以接受 .json、.jsonl 和 .parquet 文件作为输入,前提是它们有一个"text"列!这让您可以使用 Hugging Face 上的现成数据集,如 Enron 邮件 或 FineWeb!
主要区别一览:
如果您对新流程或 Augmentoolkit 有任何问题,请随时联系我!我的联系方式在此仓库底部。
从常见到不常见的顺序排列:
processing.py
是运行流程的主文件。它定义了流程的核心控制流程。control_flow_functions.py
是定义流程使用的大量辅助函数的地方。这里定义了参数、采样参数以及每个单独步骤的控制流程。它与 processing.py
的区别在于 processing.py
是整个流程的控制流程,而 control_flow_functions.py
主要是每个单独步骤的控制流程。这里定义了输出处理器
——如果您更改了提示并遇到生成失败 问题,这里是您需要查看的地方。 查看 parse_validation_step
可以了解输出处理器的示例,基本上它将 LLM 响应作为输入并返回一个问答对。engine_wrapper_class.py
包含一个类,作为许多不同 LLM API 的单一接口。如果您想使用不兼容 OpenAI 的其他 API 提供商,这里是需要更改代码的地方。generation_step_class
包含一个存储单个生成步骤参数的类。生成步骤基本上保存一些采样参数、一个提示和一个引擎包装器,并可以用这些设置调用该引擎包装器。通常,如果您在修改步骤后遇到错误,您会更改此处以添加额外的日志记录——Augmentoolkit 中 LLM 调用的工作方式是创建一个带有提示路径和一些采样参数的生成步骤对象,然后用特定调用 LLM 的参数调用该对象的 .generate() 方法。generation_functions
文件夹中还有一些其他杂项实用函数。app.py
包含 gradio WebUI 代码。这是图形界面。字段基于 config.yaml
。这里是一个流程图,详细说明了 Augmentoolkit 典型运行的进行方式。源文本可以是任何包含可以提问的信息的内容。
在您的 OUTPUT
文件夹中需要注意的重要文件是 simplified_data_no_rag.jsonl
、simplified_data_rag.jsonl
和 pretraining.json
。这些是您最常用于训练的文件。其他顶级文件是为了提供更多信息,比如每个对话生成自哪个文件的哪个块。但对于训练,您需要 simplified_data_no_rag.jsonl
、simplified_data_rag.jsonl
和 pretraining.json
。它们都已经格式化,可以与开源训练库 Axolotl 一起使用。您只需像使用 _model_training_configs/
中提供的配置那样使用这些数据集即可。
对话文件的格式称为"shareGPT",这是许多数据集中常见的格式。然而,pretraining.json
被格式化为预训练数据。要将事实信息融入 LLM,建议您使用完整微调或(更便宜的)GaLore 调优,结合对源文本和 Augmentoolkit 生成的指令数据进行持续预训练。如果您想要更详细的示例,请查看提供的配置,或 视频文档 的第二个视频。
在最近的更新中,Augmentoolkit 增加了从问题生成、输入块过滤和对话生成中获取数据的功能。这些可以通过文件名中含有 _DATAGEN_OUTPUT
的 .jsonl
文件识别。当您查看其中一个文件时,您就会明白它们具体是什么。
它们采用 ShareGPT 格式,便于训练,可以用作更多样化的数据来充实训练运行。它们还可以用来制作专门作为 Augmentoolkit 一部分运行的 LLM 专家——在足够多的这些数据上训练模型,您将获得一个强大的本地推理工具。
在未来几周和几个月内,Augmentoolkit 将扩展更多的流程、功能和更新。我正在与 AlignmentLab AI 合作进行其中一些工作!
即将推出的一个特定流程是超长上下文指令数据。如果您想看到其他类型的流程,请告诉我,我也会添加它们!
你有数据生成或数据清洗的代码吗?我欢迎添加新管道的PR!你只需要做以下几件事:1)确保它有某种形式的 config.yaml
文件用于设置,2)确保它有自己的脚本(如 processing.py
),3)将任何实用函数放在 augmentoolkit/
目录中。
让我们一起打造世界上最好的数据生成工具!
修改Augmentoolkit通常需要大量提示开源LLM。这和许多其他AI开发方面一样,都很难掌握。我正在建立一个社区,让这一切变得简单。
这个社区不是典型的虚假大师"AI工具"炒作。它是由开发者为开发者服务的。
目前我们有一个完整的开源提示视频课程,每周进行AI开发问答,还可以选择与我进行每月一对一交流,我会尽力帮助你的项目。这里有一群志同道合的专业人士和爱好者。
我很乐意邀请你加入。点击这个链接查看登陆页面,看看是否有兴趣加入。
截至2024年6月12日,Augmentoolkit进行了重大更新。两个全新的提示覆盖文件夹让你可以生成旨在使模型更智能和更详细的数据,同时在预训练中获得更多指令数据。根据来之不易的经验进行了调整,以优化最终模型质量。提示的全面改革使管道更加灵活和强大。现在使用YAML而不是JSON来处理提示,因为它支持换行。在 ./pure_synthetic_pipeline
中可以找到一个全新数据生成程序的早期版本,该程序甚至可以在没有任何文本输入的情况下创建数据集。对常见错误有了更好的日志记录。哦,而且代码几乎完全重构了!
在最近的更新中,RP模式被移除。如果你需要,可以回退到之前的版本。因此,代码现在更加清晰,更易于维护。
这些变更中的许多灵感来自于最近发布的Verustoolkit,这是我为(并作为)Verus社区开发的。Verustoolkit专门针对Verus,但它是开源的,所以我将其关键改进移植到了这里。如果你对区块链技术的未来感兴趣,去看看吧!
如果你认为这个项目很酷很有用,太好了!我真诚地为你对我的工作感兴趣而高兴。如果你对这个项目非常感兴趣,你可能也会对我的其他一些endeavors感兴趣:
欢迎贡献!无论是新的API端点,还是你发现效果很好的一组提示,或者是一个全新的管道,请提交PR!这里的审核很快。任何能够进一步推动民主化数据集生成目标的内容都受欢迎。
MrDragonFox — Mistral和TheBloke Discord的一位管理员 — 有一个服务器,他正在那里开发一个新的量化引擎。那里有一个讨论Augmentoolkit的角落!来看看并在https://discord.com/invite/foxengine-ai上连接吧!
本地生成的一个限制是你一次只能运行一个模型。Augmentoolkit通常使用两种不同的模型:一个小模型用于大量工作,一个大而智能的模型用 于困难任务。如果你想在本地高效生成,你需要使用 config.yaml
中的 PHASE
选项。WORK_IN_PHASES
将被打开,PHASE_INDEX
应根据你的数据集生成运行进度设置。阶段索引0 = 过滤掉没有相关上下文的块,使用小模型;索引1 = 问题生成,使用大模型;索引2 = 问题验证,使用小模型;索引3 = 上下文修订和对话生成,最后阶段,使用大模型。
启动你的本地openai兼容LLM服务器,使用较小的模型。将配置设置为:
PHASE:
WORK_IN_PHASES: True
PHASE_INDEX: 0
设置好所有其他设置(输入文本,base_url等),然后运行 processing.py
。当完成后,将配置改为:
PHASE:
WORK_IN_PHASES: True
PHASE_INDEX: 1
重启你的本地LLM服务器以使用更大更强大的LLM。然后再次运行 processing.py
— 由于Augmentoolkit的自动恢复功能,它会从你离开的地方继续。当该步骤完成后,将配置设置为
PHASE:
WORK_IN_PHASES: True
PHASE_INDEX: 2
让你的本地LLM服务器使用小模型。最后,一旦完成,用大模型运行第3阶段:
PHASE:
WORK_IN_PHASES: True
PHASE_INDEX: 3
这个过程取代了之前更繁琐的本地推理方法。现在,你可以从配置中管理它。 如果你想设置后就不管它,你可以接受使用更强大模型的较长生成时间,这不会影响你。
为了加快生成速度并提高成本效率,最好使用Runpod.io或类似的GPU租赁服务(推荐2个H100或8个A40)。对于大规模数据集生成任务,这可能比使用API更便宜,而且不会遇到消费级硬件有时会遇到的痛苦的生成速度问题。
祝你数据集生成愉快!现在数据终于成为了一个简单的过程,尽情享受制作精彩的自定义模型吧。
OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。
openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。
高分辨率纹理 3D 资产生成
Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。
一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。
3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。
用于可扩展和多功能 3D 生成的结构化 3D 潜在表示
TRELLIS 是一 个专注于 3D 生成的项目,它利用结构化 3D 潜在表示技术,实现了可扩展且多功能的 3D 生成。项目提供了多种 3D 生成的方法和工具,包括文本到 3D、图像到 3D 等,并且支持多种输出格式,如 3D 高斯、辐射场和网格等。通过 TRELLIS,用户可以根据文本描述或图像输入快速生成高质量的 3D 资产,适用于游戏开发、动画制作、虚拟现实等多个领域。
10 节课教你开启构建 AI 代理所需的一切知识
AI Agents for Beginners 是一个专为初学者打造的课程项目,提供 10 节课程,涵盖构建 AI 代理的必备知识,支持多种语言,包含规划设计、工具使用、多代理等丰富内容,助您快速入门 AI 代理领域。
AI Excel全自动制表工具
AEE 在线 AI 全自动 Excel 编辑器,提供智能录入、自动公式、数据整理、图表生成等功能,高效处理 Excel 任务,提升办公效率。支持自动高亮数据、批量计算、不规则数据录入,适用于企业、教育、金融等多场景。
基于 UI-TARS 视觉语言模型的桌面应用,可通过自然语言控制计算机进行多模态操作。
UI-TARS-desktop 是一款功能强大的桌面应用,基于 UI-TARS(视觉语言模型)构建。它具备自然语言控制、截图与视觉识别、精确的鼠标键盘控制等功能,支持跨平台使用(Windows/MacOS),能提供实时反馈和状态显示,且数据完全本地处理,保障隐私安全。该应用集成了多种大语言模型和搜索方式,还可进行文件系统操作。适用于需要智能交互和自动化任务的场景,如信息检索、文件管理等。其提供了详细的文档,包括快速启动、部署、贡献指南和 SDK 使用说明等,方便开发者使用和扩展。
开源且先进的大规模视频生成模型项目
Wan2.1 是一个开源且先进的大规模视频生成模型项目,支持文本到图像、文本到视频、图像到视频等多种生成任务。它具备丰富的配置选项,可调整分辨率、扩散步数等参数,还能对提示词进行增强。使用了多种先进技术和工具,在视频和图像生成领域具有广泛应用前景,适合研究人员和开发者使用。
全流程 AI 驱动的数据可视化工具,助力用户轻松创作高颜值图表
爱图表(aitubiao.com)就是AI图表,是由镝数科技推出的一款创新型智能数据可视化平台,专注于为用户提供便捷的图表生成 、数据分析和报告撰写服务。爱图表是中国首个在图表场景接入DeepSeek的产品。通过接入前沿的DeepSeek系列AI模型,爱图表结合强大的数据处理能力与智能化功能,致力于帮助职场人士高效处理和表达数据,提升工作效率和报告质量。
一款强大的视觉语言模型,支持图像和视频输入
Qwen2.5-VL 是一款强大的视觉语言模型,支持图像和视频输入,可用于多种场景,如商品特点总结、图像文字识别等。项目提供了 OpenAI API 服务、Web UI 示例等部署方式,还包含了视觉处理工具,有助于开发者快速集成和使用,提升工作效率。
最新AI工具、AI资讯
独家AI资源、AI项目落地
微信扫一扫关注公众号