pythia

pythia

大语言模型训练过程知识演化分析开源项目

Pythia是一个开源项目,旨在分析大语言模型训练过程中的知识演化。该项目提供完整的模型、数据和代码,包含154个训练检查点,支持研究人员深入探索学习动态和因果关系。Pythia是业界首个支持全面复现和学习动态分析的模型套件,为大语言模型的可解释性研究提供了重要工具。

Pythia大语言模型模型训练可解释性研究学习动态Github开源项目

Pythia: 跨时间和规模解释Transformers模型

这个仓库是EleutherAI的Pythia项目,该项目结合可解释性分析和缩放规律,以理解自回归Transformers模型在训练过程中知识如何发展和演变。有关模型、训练和特性的详细信息,请参阅我们的论文《Pythia: 一套用于分析大型语言模型训练和缩放的工具》。

Pythia套件的开发明确目的是为了支持可解释性、学习动态以及伦理和透明度研究,现有的模型套件对此不足。Pythia套件的主要特点是:

  1. 论文中使用的所有模型、数据和代码都已公开发布,可以完全复现结果。我们论文中的所有结果都经过至少一个其他实验室的独立验证。
  2. 所有模型在整个训练过程中保存了154个检查点,可以研究大型语言模型的学习动态。
  3. 所有模型都以相同的顺序在相同的数据上进行训练,使研究人员能够探索对训练过程的因果干预。

在发布时,Pythia是世界上唯一满足这些要求的模型套件。事实上,我们为12B参数模型发布的154个检查点,代表了每个模型的部分训练检查点数量超过了世界上所有12B+模型曾发布的总和。我们的工作激发了其他人创建类似项目,包括LLM360的Amber和K2-65B、AI2的OLMo以及Zyphra的BlackMamba。

除了Pythia套件本身,该仓库还作为一个中心,包含以下论文的信息、代码和可复现说明:

  • 大型语言模型中的涌现和可预测记忆 [代码] [论文]

更新日志

[2024年7月9日] 大幅修改了readme,包括更好的历史背景说明,并推广了人们使用Pythia进行的许多出色研究。还添加了后续训练模型的链接。

[2023年11月2日] 应一些研究人员的要求,我们添加了14M和31M模型。我们计划在未来训练这些模型的去重版本。

[2023年4月3日] 我们发布了所有Pythia模型的新版本,修复了原始套件中的各种不一致。有关更改的详细信息,请参阅Pythia论文的附录B。旧模型("v0")仍可在此处获得,可用于消融研究。

[2023年1月20日] 2023年1月20日,我们决定重命名Pythia模型套件,在总参数计数中包括嵌入层和反嵌入层参数,与许多其他模型套件一致,因为我们认为这种惯例更好地反映了这些模型的设备内存使用情况。我们还发现由于打字错误,我们的一个模型比我们想象的要小,并用预期大小的模型替换了它。详情请见此处。

目录

模型

我们在Pile数据集上训练并发布了8种规模的模型套件,以及应用去重后的Pile数据集。所有8种规模的模型都在完全相同的数据上按完全相同的顺序进行训练。每个模型在训练过程中看到了299,892,736,000 = 300B个token。对于"标准"模型,这相当于Pile上不到1个epoch,对于去重后的Pile(一个epoch包含207B个token)则相当于= 1.5个epoch。所有模型都使用混合精度训练,除了EleutherAI/pythia-1b使用bf16外,其他模型都使用fp16,因为在fp16下该模型在训练后期出现了无法恢复的损失尖峰。

在初始发布后,应对稀疏自编码器缩放感兴趣的对齐研究人员的要求,我们训练了14M和31M参数的模型。

参数层数模型维度头数头维度批量大小学习率Hugging Face 检查点
14M61284322M1.0e-3标准版
31M62568322M1.0e-3标准版
70M65128642M1.0e-3标准版, 去重版
160M1276812642M6.0e-4标准版, 去重版
410M24102416642M3.0e-4标准版, 去重版
1B16204882562M3.0e-4标准版, 去重版
1.4B242048161282M2.0e-4标准版, 去重版
2.8B32256032802M1.6e-4标准版, 去重版
6.9B324096321282M1.2e-4标准版, 去重版
12B365120401282M1.2e-4标准版, 去重版

为了促进大型语言模型学习动态的研究,我们为每个模型提供了154个检查点,分别代表第0步(初始化)、第1步、第2步、第4步、第8步、第16步、第32步、第64步、第128步、第256步、第512步、第1000步,以及之后每1000步的状态。我们还上传了预分词的数据文件和一个脚本,用于重建所有模型在训练过程中使用的数据加载器。更多详情请参见重现训练部分。

用于使用GPT-NeoX库训练这些模型的配置文件可以在本仓库的models/目录中找到,也可以在GPT-NeoX库本身中找到。

我们在最初训练这些模型时犯了一个错误,导致不同运行之间存在一些不一致。我们修复了这些不一致并重新运行了整个模型套件,原始运行版本以EleutherAI/pythia-160m-v0的名称提供。有关v0模型与主套件的区别的更多详情,请参阅Pythia论文。

多个随机种子

用于训练Pythia模型的随机种子是GPT-NeoX的默认值:1234。为了促进研究随机性如何影响模型行为,我们一直在使用不同的随机种子训练更多模型。目前,我们已经使用从1到9的每个随机种子训练并发布了以下模型:

  • Pythia 14M
  • Pythia 31M
  • Pythia 70M
  • Pythia 160M
  • Pythia 410M

所有这些模型都是标准的Pythia模型,而不是在去重的Pile数据集上训练的模型。与最初发布的模型结合在一起,它们代表了使用不同随机种子的十个其他完全相同的变体。

使用Pythia

快速开始

所有Pythia模型都托管在Hugging Face Hub上。可以通过以下代码加载和使用它们(以3000步的pythia-70M-deduped模型检查点为例):

from transformers import GPTNeoXForCausalLM, AutoTokenizer model = GPTNeoXForCausalLM.from_pretrained( "EleutherAI/pythia-70m-deduped", revision="step3000", cache_dir="./pythia-70m-deduped/step3000", ) tokenizer = AutoTokenizer.from_pretrained( "EleutherAI/pythia-70m-deduped", revision="step3000", cache_dir="./pythia-70m-deduped/step3000", ) inputs = tokenizer("你好,我是", return_tensors="pt") tokens = model.generate(**inputs) tokenizer.decode(tokens[0])

所有模型都经过了相当于143000步、批量大小为2,097,152个token的训练。修订版/分支step143000与每个模型main分支上的模型检查点完全一致。

我们还提供了GPT-NeoX库接受的所有模型检查点格式,最终步骤的检查点和优化器状态可以从Hugging Face Hub上的EleutherAI/neox-ckpt-pythia-xxx-deduped-v1下载,但由于优化器状态的大小和预期的较低需求,我们不会大规模提供所有步骤的检查点。如果你想使用GPT-NeoX代码库内的中间模型进行分析,或者想要其他步骤的优化器状态,请发送邮件至hailey@eleuther.aistella@eleuther.ai

❗ Huggingface上尺寸为160m、410m、1.4bpythia-{size}-v0模型是在71500步中以4M令牌的批量大小进行训练的,每500步保存一次检查点。为了与所有2M批量模型保持一致,Huggingface上这些v0模型的步骤名称已重命名。因此,标记为pythia-1.4b-v0step1000检查点实际上是第500步,但它已经处理了与其他step1000检查点相同数量的令牌。

复现训练

(由@BaruchG提供的扩展复现说明)

我们提供训练数据以便复现我们的训练过程。GPT-NeoX库需要预先分词的训练数据,以两个内存映射的numpy数组形式存储:一个.bin文件和一个.idx文件。我们通过Hugging Face hub提供这些文件。要下载并使用去重后的Pile训练数据:

git lfs clone https://huggingface.co/datasets/EleutherAI/pythia_deduped_pile_idxmaps # 可选步骤,以确保文件未损坏 python utils/checksum_shards.py python utils/unshard_memmap.py --input_file ./pythia_deduped_pile_idxmaps/pile_0.87_deduped_text_document-00000-of-00082.bin --num_shards 83 --output_dir ./pythia_pile_idxmaps/ # 完整文件的正确sha256值为 0cd548efd15974d5cca78f9baddbd59220ca675535dcfc0c350087c79f504693 # 可以通过以下命令验证:sha256sum ./pythia_pile_idxmaps/*

这个过程需要一天多的时间才能完成,但不应该需要超过5 GB的内存。我们建议下载这些数据,而不是从头开始重新分词Pile数据集,以确保保持Pythia模型所见的数据顺序。除了训练数据外,您还需要本地复制一份我们用于训练模型的分词器。您可以在这里找到它。

接下来,您需要设置训练环境:

git clone https://github.com/EleutherAI/gpt-neox.git
cd gpt-neox
git checkout v1.0
pip install -r requirements/requirements-flashattention.txt
wget https://github.com/EleutherAI/pythia/blob/main/models/160M/pythia-160m-deduped.yml
docker build -t pythia:latest .

容器构建完成后,使用以下命令运行容器(从GPT-NeoX仓库的根目录运行,确保pythia yaml文件可以从该文件夹内访问):

docker run --runtime=nvidia --rm -it -e NVIDIA_VISIBLE_DEVICES=0,1,2,3 --shm-size=1g --ulimit memlock=-1 --mount type=bind,src=$PWD,dst=/gpt-neox -v $(pwd):/workspace/ pythia:latest bash

如果数据集和Yaml文件无法从Docker容器内访问,您可以使用-v参数添加更多连接的卷。

修改数据路径和分词器路径的行如下:

  "train-data-paths": ["/fsx/pile/pile_20B_tokenizer_text_document"], #指向步骤1中生成的包含.bin和.idx文件的文件夹
  "valid-data-paths": ["/fsx/pile/pile_20B_tokenizer_text_document"], #指向步骤1中生成的包含.bin和.idx文件的文件夹
  "test-data-paths": ["/fsx/pile/pile_20B_tokenizer_text_document"], #指向步骤1中生成的包含.bin和.idx文件的文件夹

  "tokenizer-type": "HFTokenizer",
  "vocab-file": "/fsx/pile/20B_tokenizer.json", #指向步骤2中获取的分词器

根据您可用的显存大小,您可能需要调整批量大小。总批量大小的计算方式为总GPU数 * train_micro_batch_size_per_gpu * gradient_accumulation_steps / (pipe-parallel-size * model-parallel-size),需要保持在1024以匹配Pythia训练批量大小。您可以:

   "train_micro_batch_size_per_gpu": XXX, #设置为适合您GPU内存的值
   "gradient_accumulation_steps": 1, #设置为一个值以补偿,使总批量大小为1024

如果您希望保存权重,也可以将该信息添加到yaml文件中。例如,要保存在checkpoints文件夹中,您可以在底部添加:

  "launcher": "slurm",
  "deepspeed_slurm": false,

  "save": "checkpoints",
  "load": "checkpoints",
  "checkpoint_validation_with_forward_pass": False,
}

确保路径是Docker容器内的路径,如果您希望权重持久化,请确保它们可以从容器外部访问,例如在/workspace/中。

现在您应该能够通过运行以下命令开始训练模型:

python deepy.py train.py pythia-160m-deduped.yml  2>&1 | tee output.txt

输出将保存到output.txt,如果您不想这样做,只需删除结尾部分。

为了将您的模型转换为Hugging Face transformers格式,您可以使用GPT-NeoX库中的tools/convert_to_hf.py脚本。您可能需要在文件类型中添加from typing import List,并将这里的行从list[torch.Tensor]更改为List[torch.Tensor]。然后,您可以像这样运行脚本来转换第143000步的权重:

python tools/convert_to_hf.py --input_dir checkpoints/global_step143000/ --config_file checkpoints2/global_step 143000/configs/pythia-70m.yml --output_dir ./output/ 

这应该会输出一个类似于https://huggingface.co/EleutherAI/pythia-70m-deduped/tree/main 的文件结构。

❗ 有时人们会发现他们最终没有得到正确的分词器,原因我们无法调试。如果您的tokenizer_config.json这里的不同,special_tokens_map.json这里的不同,您可能需要用Huggingface上的文件替换它们。 要使用我们的评估库进行评估,请在这里安装容器(已测试4.28和4.29版本)。设置好该Docker容器后,运行:

git clone https://github.com/EleutherAI/lm-evaluation-harness
cd lm-evaluation-harness
pip install -e .

按照Harness仓库中的说明进行操作。然后,你应该能够通过指向你的权重(应该在你的容器中)来运行基准测试,运行类似以下的命令:

python3 main.py --model hf-causal-experimental  --model_args pretrained=../gpt-neox/output/ --tasks lambada_openai,piqa,winogrande,arc_easy,sciq,wikitext --device cuda:0

探索数据集

我们提供了一个工具,用于查看所有模型在训练期间使用的训练数据加载器的特定部分,位于utils/batch_viewer.py

首先,我们需要克隆Pythia仓库:

git clone https://github.com/EleutherAI/pythia

接下来,我们必须安装依赖项:

pip install torch==1.13.0+cu117 -f https://download.pytorch.org/whl/torch/
pip install numpy tqdm huggingface_hub

然后,我们必须下载适当的数据集。我们提供了预先打乱的重复和去重版本的Pile数据集。使用Huggingface的工具下载适当的版本,如下所示:

提示:确保将path/to/*替换为你打算保存从Huggingface下载的数据集的适当路径。

  • 要下载标准版本,使用
    from huggingface_hub import hf_hub_download hf_hub_download(repo_id="EleutherAI/pile-standard-pythia-preshuffled", repo_type="dataset", cache_dir="path/to/local/folder")
  • 要下载去重版本,使用
    from huggingface_hub import hf_hub_download hf_hub_download(repo_id="EleutherAI/pile-deduped-pythia-preshuffled", repo_type="dataset", cache_dir="path/to/local/folder")

现在你可以使用utils/unshard_mmap.py脚本合并文件:

python3 utils/unshard_mmap.py --input_file "path/to/local/folder/document-00000-of-00020.bin" --num_shards 21 --output_dir "path/to/merged/folder/"

确保也将索引文件复制到合并文件夹,使用以下命令:

cp path/to/local/folder/document.idx path/to/merged/folder/document.idx

现在,我们已经准备好运行utils/batch_viewer.py了!

python3 utils/batch_viewer.py \ --start_iteration 0 \ --end_iteration 1000 \ --load_path path/to/merged/folder/document \ --save_path path/to/save/folder/ \ --conf_dir utils/dummy_config.yml

这将保存一个包含所有索引的单独文件,作为numpy数组。

你现在可以使用numpy加载它,如下所示:

import numpy as np indices = np.load("path/to/save/folder/indices.npy")

这些索引包含大小为(None, 2049)的整数序列的标记化序列,其中每个整数对应于一个唯一的标记索引。 请注意,文档是连接的,并由EOD标记分隔。因此,每个样本或批次可能不以EOD标记开始。在训练期间,目标标记向左移动1位。因此,序列长度为2048的模型需要2049长度的序列进行训练(更多信息,请参阅此评论

Pythia论文复现

我们在本仓库的case-studies/文件夹中为那些有兴趣复现Pythia套件论文中进行的案例研究的人提供了进一步的信息。

基准分数

我们还提供了各种NLP数据集的0-shot和5-shot基准结果:

  • ARC-challenge (arc_challenge)
  • ARC-easy (arc_easy)
  • BLiMP (blimp_*)
  • Lambada (lambada_openai)
  • LogiQA (logiqa)
  • MMLU (hendrycksTest*)
  • PiQA (piqa)
  • SciQ (sciq)
  • Wikitext (wikitext)
  • Winogrande (winogrande)
  • WSC (wsc)

评估是在GPT-NeoX中使用LM Evaluation Harness进行的,可以在本仓库的evals/pythia-v1/*/*中按模型和步骤查看。警告:所有评估都是使用语言模型评估工具的待办提交版本在几年前运行的,可能无法通过当前版本重现。

基于Pythia的研究

我们的Pythia项目的主要目标是在EleutherAI和整个社区中促进可解释性和学习动态等主题的研究。在这里,我们记录了使用我们模型的精选论文,重点关注那些受Pythia套件独特赋能的工作,这些工作如果使用其他组织发布的模型可能会较难实现或无法实现。有关引用Pythia的更多论文列表,请参见此处

语言模型内部机制

学习动态

训练数据如何决定模型行为

安全、审计和合规研究

引用详情

如果您在研究中使用Pythia模型,请引用我们的论文:

@inproceedings{biderman2023pythia,
  title={Pythia: A suite for analyzing large language models across training and scaling},
  author={Biderman, Stella and Schoelkopf, Hailey and Anthony, Quentin Gregory and Bradley, Herbie and O'Brien, Kyle and Hallahan, Eric and Khan, Mohammad Aflah and Purohit, Shivanshu and Prashanth, USVSN Sai and Raff, Edward and others},
  booktitle={International Conference on Machine Learning},
  pages={2397--2430},
  year={2023},
  organization={PMLR}
}

如果您使用了本仓库中其他论文的数据或结果,请引用相应的论文。引用信息可在各自的README中找到,为方便起见,这里也复制如下:

@inproceedings{biderman2023emergent,
      title={Emergent and Predictable Memorization in Large Language Models}, 
      author={Biderman, Stella and Prashanth, USVSN Sai and Sutawika, Lintang and Schoelkopf, Hailey and Anthony, Quentin and Purohit, Shivanshu and Raff, Edward},
      journal={Advances in Neural Information Processing Systems},
      year={2023}
}

如果您有兴趣引用我们的训练数据、训练库或评估库,可以使用以下引用:

@article{gao2020pile,
  title={The pile: An 800gb dataset of diverse text for language modeling},
  author={Gao, Leo and Biderman, Stella and Black, Sid and Golding, Laurence and Hoppe, Travis and Foster, Charles and Phang, Jason and He, Horace and Thite, Anish and Nabeshima, Noa and others},
  journal={arXiv preprint arXiv:2101.00027},
  year={2020}
}

@article{biderman2022datasheet,
  title={Datasheet for the pile},
  author={Biderman, Stella and Bicheno, Kieran and Gao, Leo},
  journal={arXiv preprint arXiv:2201.07311},
  year={2022}
}

@软件{gpt-neox-库, 标题 = {{GPT-NeoX:基于PyTorch的大规模自回归语言建模}}, 作者 = {Andonian, Alex and Anthony, Quentin and Biderman, Stella and Black, Sid and Gali, Preetham and Gao, Leo and Hallahan, Eric and Levy-Kramer, Josh and Leahy, Connor and Nestler, Lucas and Parker, Kip and Pieler, Michael and Phang, Jason and Purohit, Shivanshu and Schoelkopf, Hailey and Stander, Dashiell and Songz, Tri and Tigges, Curt and Thérien, Benjamin and Wang, Phil and Weinbach, Samuel}, 网址 = {https://www.github.com/eleutherai/gpt-neox}, doi = {10.5281/zenodo.5879544}, 月份 = {9}, 年份 = {2023}, 版本 = {2.0.0}, }

@其他{eval-harness, 作者 = {Gao, Leo and Tow, Jonathan and Abbasi, Baber and Biderman, Stella and Black, Sid and DiPofi, Anthony and Foster, Charles and Golding, Laurence and Hsu, Jeffrey and Le Noac'h, Alain and Li, Haonan and McDonell, Kyle and Muennighoff, Niklas and Ociepa, Chris and Phang, Jason and Reynolds, Laria and Schoelkopf, Hailey and Skowron, Aviya and Sutawika, Lintang and Tang, Eric and Thite, Anish and Wang, Ben and Wang, Kevin and Zou, Andy}, 标题 = {少样本语言模型评估框架}, 月份 = 9, 年份 = 2021, 发布者 = {Zenodo}, 版本 = {v0.0.1}, doi = {10.5281/zenodo.5371628}, 网址 = {https://doi.org/10.5281/zenodo.5371628} }

许可证

以下许可证适用于此GitHub仓库中的所有代码,以及Pythia模型和本仓库中包含的任何其他受版权保护的作品。

版权所有 2024 EleutherAI

根据Apache许可证2.0版(以下简称"许可证")获得许可; 除非遵守许可证,否则您不得使用此文件。 您可以在以下位置获取许可证副本:

   http://www.apache.org/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则根据许可证分发的软件是基于 "按原样"分发的,不附带任何明示或暗示的担保或条件。 有关许可证下的特定语言管理权限和限制,请参阅许可证。

编辑推荐精选

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

TRELLIS

TRELLIS

用于可扩展和多功能 3D 生成的结构化 3D 潜在表示

TRELLIS 是一个专注于 3D 生成的项目,它利用结构化 3D 潜在表示技术,实现了可扩展且多功能的 3D 生成。项目提供了多种 3D 生成的方法和工具,包括文本到 3D、图像到 3D 等,并且支持多种输出格式,如 3D 高斯、辐射场和网格等。通过 TRELLIS,用户可以根据文本描述或图像输入快速生成高质量的 3D 资产,适用于游戏开发、动画制作、虚拟现实等多个领域。

ai-agents-for-beginners

ai-agents-for-beginners

10 节课教你开启构建 AI 代理所需的一切知识

AI Agents for Beginners 是一个专为初学者打造的课程项目,提供 10 节课程,涵盖构建 AI 代理的必备知识,支持多种语言,包含规划设计、工具使用、多代理等丰富内容,助您快速入门 AI 代理领域。

AEE

AEE

AI Excel全自动制表工具

AEE 在线 AI 全自动 Excel 编辑器,提供智能录入、自动公式、数据整理、图表生成等功能,高效处理 Excel 任务,提升办公效率。支持自动高亮数据、批量计算、不规则数据录入,适用于企业、教育、金融等多场景。

UI-TARS-desktop

UI-TARS-desktop

基于 UI-TARS 视觉语言模型的桌面应用,可通过自然语言控制计算机进行多模态操作。

UI-TARS-desktop 是一款功能强大的桌面应用,基于 UI-TARS(视觉语言模型)构建。它具备自然语言控制、截图与视觉识别、精确的鼠标键盘控制等功能,支持跨平台使用(Windows/MacOS),能提供实时反馈和状态显示,且数据完全本地处理,保障隐私安全。该应用集成了多种大语言模型和搜索方式,还可进行文件系统操作。适用于需要智能交互和自动化任务的场景,如信息检索、文件管理等。其提供了详细的文档,包括快速启动、部署、贡献指南和 SDK 使用说明等,方便开发者使用和扩展。

Wan2.1

Wan2.1

开源且先进的大规模视频生成模型项目

Wan2.1 是一个开源且先进的大规模视频生成模型项目,支持文本到图像、文本到视频、图像到视频等多种生成任务。它具备丰富的配置选项,可调整分辨率、扩散步数等参数,还能对提示词进行增强。使用了多种先进技术和工具,在视频和图像生成领域具有广泛应用前景,适合研究人员和开发者使用。

爱图表

爱图表

全流程 AI 驱动的数据可视化工具,助力用户轻松创作高颜值图表

爱图表(aitubiao.com)就是AI图表,是由镝数科技推出的一款创新型智能数据可视化平台,专注于为用户提供便捷的图表生成、数据分析和报告撰写服务。爱图表是中国首个在图表场景接入DeepSeek的产品。通过接入前沿的DeepSeek系列AI模型,爱图表结合强大的数据处理能力与智能化功能,致力于帮助职场人士高效处理和表达数据,提升工作效率和报告质量。

Qwen2.5-VL

Qwen2.5-VL

一款强大的视觉语言模型,支持图像和视频输入

Qwen2.5-VL 是一款强大的视觉语言模型,支持图像和视频输入,可用于多种场景,如商品特点总结、图像文字识别等。项目提供了 OpenAI API 服务、Web UI 示例等部署方式,还包含了视觉处理工具,有助于开发者快速集成和使用,提升工作效率。

下拉加载更多