GPT4All Python SDK开发实战教程

【免费下载链接】gpt4all gpt4all: open-source LLM chatbots that you can run anywhere 【免费下载链接】gpt4all 项目地址: https://gitcode.com/GitHub_Trending/gp/gpt4all

本文是GPT4All Python SDK的完整开发实战教程,详细介绍了如何在不同操作系统上搭建和配置Python绑定环境,包括基础安装、GPU加速配置以及常见问题的解决方案。教程涵盖了环境要求与前置条件、基础安装方法、从源码构建安装、GPU加速配置(CUDA、Metal、Vulkan)、依赖项管理、环境变量配置、多版本Python环境管理、常见问题与解决方案以及性能优化配置等内容,为开发者提供全面的环境搭建指南。

Python绑定环境搭建与配置

GPT4All Python SDK为开发者提供了便捷的方式来集成和使用本地大语言模型。本节将详细介绍如何在不同操作系统上搭建和配置Python绑定环境,包括基础安装、GPU加速配置、以及常见问题的解决方案。

环境要求与前置条件

在开始安装之前,请确保您的系统满足以下基本要求:

组件 最低要求 推荐配置
Python版本 Python 3.8+ Python 3.10+
操作系统 Windows 10+, macOS 10.15+, Ubuntu 18.04+ 最新稳定版本
内存 8GB RAM 16GB+ RAM
存储空间 2GB可用空间 10GB+可用空间

基础安装方法

使用pip安装(推荐)

最简单的安装方式是通过PyPI直接安装预编译的包:

pip install gpt4all

这个命令会自动下载并安装最新版本的GPT4All Python绑定,包括所有必要的依赖项。

验证安装

安装完成后,可以通过以下代码验证安装是否成功:

import gpt4all
print(f"GPT4All版本: {gpt4all.__version__}")

从源码构建安装

如果需要自定义构建或使用最新开发版本,可以从源码进行安装:

1. 克隆仓库并初始化子模块
git clone --recurse-submodules https://gitcode.com/GitHub_Trending/gp/gpt4all.git
cd gpt4all/gpt4all-backend
2. 构建后端库

在Linux/macOS上:

cmake -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo
cmake --build build --parallel

在Windows上(使用Visual Studio):

cmake -B build
cmake --build build --parallel --config RelWithDebInfo
3. 安装Python包
cd ../gpt4all-bindings/python
pip install -e .

GPU加速配置

GPT4All支持多种GPU加速后端,包括CUDA、Metal和Vulkan。以下是不同平台的GPU配置方法:

CUDA配置(NVIDIA GPU)
# 安装CUDA版本的GPT4All
pip install gpt4all[cuda]

确保系统已安装:

  • NVIDIA驱动程序(最新版本)
  • CUDA Toolkit 11.0+
  • cuDNN库
Metal配置(Apple Silicon Mac)
from gpt4all import GPT4All

# 使用Metal加速
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu')
Vulkan配置(AMD/Intel GPU)
# 安装Vulkan SDK
# Ubuntu/Debian:
sudo apt install vulkan-tools libvulkan-dev

# 使用Vulkan加速
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='amd')  # 或 device='intel'

依赖项管理

GPT4All Python绑定的核心依赖包括:

mermaid

环境变量配置

为了优化性能和调试,可以设置以下环境变量:

# 设置模型缓存目录(默认为 ~/.cache/gpt4all)
export GPT4ALL_MODEL_DIR="/path/to/your/models"

# 启用详细日志
export GPT4ALL_VERBOSE=1

# 设置线程数(默认自动检测)
export OMP_NUM_THREADS=4

多版本Python环境管理

建议使用虚拟环境来管理依赖:

# 使用venv创建虚拟环境
python -m venv gpt4all-env
source gpt4all-env/bin/activate  # Linux/macOS
# 或
gpt4all-env\Scripts\activate     # Windows

# 安装GPT4All
pip install gpt4all

常见问题与解决方案

1. 库加载错误

问题: Could not find module 'libllmodel.dll' (or one of its dependencies)

解决方案:

# 确保安装了Visual C++ Redistributable
# 或者从源码构建时使用正确的工具链
2. GPU内存不足

问题: GPU does not have sufficient RAM

解决方案:

# 减少GPU层数或使用CPU模式
model = GPT4All("model.gguf", device='cpu', ngl=50)
3. 模型下载失败

解决方案:

# 手动下载模型并指定路径
model = GPT4All("path/to/local/model.gguf", allow_download=False)

性能优化配置

根据硬件配置调整参数以获得最佳性能:

# 优化配置示例
model = GPT4All(
    "orca-mini-3b-gguf2-q4_0.gguf",
    n_threads=8,          # 根据CPU核心数调整
    n_ctx=4096,           # 上下文窗口大小
    ngl=100,              # GPU层数(如有GPU)
    device='gpu' if has_gpu else 'cpu'
)

开发环境设置

对于开发目的,安装开发依赖:

pip install gpt4all[dev]

这将包含代码格式化工具、测试框架和文档生成工具。

通过以上步骤,您应该能够成功搭建和配置GPT4All Python SDK的开发环境。下一节我们将深入探讨如何使用这些配置来进行模型推理和聊天交互。

核心API接口详解与示例

GPT4All Python SDK提供了强大而直观的API接口,让开发者能够轻松地在本地运行大型语言模型。本节将深入解析核心API接口的使用方法和最佳实践。

GPT4All类:模型加载与文本生成

GPT4All类是SDK的核心,负责模型的加载、配置和文本生成任务。让我们通过一个完整的示例来了解其主要功能:

from gpt4all import GPT4All

# 初始化模型 - 自动下载并加载orca-mini模型
model = GPT4All(
    model_name="orca-mini-3b-gguf2-q4_0.gguf",
    device="cpu",           # 使用CPU运行
    n_threads=4,           # 使用4个线程
    n_ctx=2048,            # 上下文窗口大小
    verbose=True           # 显示详细日志
)

# 基本文本生成
response = model.generate(
    prompt="请解释人工智能的基本概念",
    max_tokens=200,        # 最大生成token数
    temp=0.7,              # 温度参数,控制创造性
    top_k=40,              # top-k采样
    top_p=0.9,             # top-p采样
    streaming=False        # 非流式输出
)

print(f"模型响应: {response}")
生成参数详解

GPT4All的generate方法支持丰富的参数配置,下表列出了主要参数及其作用:

参数 类型 默认值 描述
max_tokens int 200 最大生成token数量
temp float 0.7 温度参数,控制输出的随机性
top_k int 40 top-k采样,限制候选token数量
top_p float 0.9 top-p采样,基于概率累积选择token
min_p float 0.0 最小概率阈值
repeat_penalty float 1.18 重复惩罚系数
repeat_last_n int 64 考虑重复的最近token数
n_batch int 8 批处理大小
streaming bool False 是否启用流式输出

流式生成与实时交互

对于需要实时显示生成结果的场景,GPT4All支持流式生成模式:

# 流式生成示例
print("开始流式生成:")
for token in model.generate(
    prompt="写一个关于Python编程的简短教程",
    streaming=True,
    max_tokens=100,
    temp=0.8
):
    print(token, end='', flush=True)
print("\n生成完成!")

聊天会话管理

GPT4All提供了强大的聊天会话功能,能够维护对话上下文:

# 创建聊天会话
with model.chat_session():
    # 第一轮对话
    response1 = model.generate("你好,我是开发者小明")
    print(f"AI: {response1}")
    
    # 第二轮对话 - 保持上下文
    response2 = model.generate("你能帮我解释一下机器学习吗?")
    print(f"AI: {response2}")
    
    # 查看当前会话历史
    print("当前会话历史:")
    for msg in model.current_chat_session:
        print(f"{msg['role']}: {msg['content']}")

Embed4All类:文本嵌入功能

除了文本生成,GPT4All还提供了强大的文本嵌入功能:

from gpt4all import Embed4All

# 初始化嵌入模型
embedder = Embed4All(
    model_name="all-MiniLM-L6-v2.gguf2.f16.gguf",
    n_threads=2
)

# 单文本嵌入
text = "人工智能是计算机科学的一个分支"
embedding = embedder.embed(text)
print(f"嵌入向量维度: {len(embedding)}")
print(f"前5个值: {embedding[:5]}")

# 批量文本嵌入
texts = [
    "机器学习是AI的核心技术",
    "深度学习使用神经网络",
    "自然语言处理处理文本数据"
]
embeddings = embedder.embed(texts, return_dict=True)
print(f"批量嵌入结果: {embeddings}")
嵌入参数配置

Embed4All的embed方法支持多种参数来优化嵌入效果:

# 高级嵌入配置
result = embedder.embed(
    text="需要嵌入的文本",
    prefix="search_query",      # 任务前缀
    dimensionality=256,         # 嵌入维度
    long_text_mode="mean",      # 长文本处理模式
    return_dict=True,           # 返回详细信息
    atlas=False                 # Atlas API兼容模式
)

print(f"嵌入向量: {result['embeddings']}")
print(f"处理的token数: {result['n_prompt_tokens']}")

设备管理与性能优化

GPT4All支持多种硬件设备,可以根据需求进行配置:

# 查看可用GPU设备
gpus = GPT4All.list_gpus()
print(f"可用GPU设备: {gpus}")

# 使用GPU加速
gpu_model = GPT4All(
    model_name="orca-mini-3b-gguf2-q4_0.gguf",
    device="gpu",              # 使用GPU
    ngl=100                    # GPU层数
)

# 性能优化配置
optimized_model = GPT4All(
    model_name="orca-mini-3b-gguf2-q4_0.gguf",
    n_threads=8,               # 更多线程
    n_ctx=4096,                # 更大的上下文窗口
    n_batch=32                 # 更大的批处理大小
)

错误处理与资源管理

正确的错误处理和资源管理对于生产环境至关重要:

try:
    # 使用上下文管理器确保资源释放
    with GPT4All("orca-mini-3b-gguf2-q4_0.gguf") as model:
        response = model.generate("测试文本")
        print(response)
        
except Exception as e:
    print(f"模型操作失败: {e}")

# 或者手动管理资源
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf")
try:
    # 执行各种操作
    response = model.generate("另一个测试")
    print(response)
finally:
    model.close()  # 确保释放资源

高级用法:自定义回调与流控制

对于需要精细控制生成过程的场景,可以使用自定义回调:

def custom_callback(token_id: int, response: str) -> bool:
    """自定义回调函数"""
    print(f"收到token {token_id}: '{response}'")
    # 返回False继续生成,True停止生成
    return "stop" in response.lower()

# 使用自定义回调
response = model.generate(
    prompt="生成一些文本内容",
    callback=custom_callback,
    max_tokens=50
)

模型配置与信息获取

GPT4All提供了获取模型信息和配置的方法:

# 获取所有可用模型
models = GPT4All.list_models()
for model_info in models:
    print(f"模型: {model_info['name']}, 大小: {model_info['filesize']}")

# 获取当前模型配置
print(f"后端类型: {model.backend}")
print(f"使用设备: {model.device}")
print(f"模型类型: {model.model_type}")

通过以上详细的API介绍和示例,您应该能够充分掌握GPT4All Python SDK的核心功能。这些接口设计既保证了易用性,又提供了足够的灵活性来满足各种复杂的应用场景需求。

模型加载与文本生成实践

GPT4All Python SDK提供了强大的模型加载和文本生成功能,让开发者能够轻松地在本地运行各种大型语言模型。本节将深入探讨如何使用GPT4All进行模型加载、配置参数优化以及高效的文本生成实践。

模型初始化与加载

GPT4All支持多种模型格式,主要使用GGUF格式的模型文件。模型加载过程智能且自动化,支持本地模型和远程下载。

基础模型加载
from gpt4all import GPT4All

# 最简单的模型加载方式
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf")

# 指定模型路径
model = GPT4All(
    model_name="mistral-7b-openorca.Q4_0.gguf",
    model_path="/path/to/custom/models"
)

# 禁用自动下载
model = GPT4All("custom-model.gguf", allow_download=False)
设备配置选项

GPT4All支持多种硬件加速方案,可根据设备性能选择最优配置:

# CPU模式(默认)
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device="cpu")

# GPU加速(Metal - macOS)
model = GPT4All("mistral-7b-openorca.Q4_0.gguf", device="gpu")

# GPU加速(Kompute - Linux/Windows)
model = GPT4All("model.gguf", device="kompute")

# 指定具体GPU设备
model = GPT4All("model.gguf", device="cuda:0")  # 使用第一个CUDA设备
性能调优参数
model = GPT4All(
    model_name="orca-mini-3b-gguf2-q4_0.gguf",
    n_threads=8,           # CPU线程数
    n_ctx=4096,            # 上下文窗口大小
    ngl=100,               # GPU层数(Vulkan)
    verbose=True           # 启用详细日志
)

文本生成核心API

GPT4All的generate方法提供了丰富的参数来控制文本生成过程,支持流式和非流式两种模式。

基础文本生成
# 简单文本补全
response = model.generate("The future of AI is")
print(response)

# 带参数控制的生成
response = model.generate(
    prompt="Explain quantum computing in simple terms:",
    max_tokens=500,
    temp=0.7,
    top_k=40,
    top_p=0.9
)
生成参数详解

下表列出了所有可用的文本生成参数及其作用:

参数 类型 默认值 描述
max_tokens int 200 生成的最大token数量
temp float 0.7 温度参数,控制创造性
top_k int 40 从top-k最可能token中采样
top_p float 0.4 核采样概率阈值
min_p float 0.0 最小概率阈值
repeat_penalty float 1.18 重复惩罚系数
repeat_last_n int 64 应用重复惩罚的历史长度
n_batch int 8 并行处理的prompt token数
streaming bool False 是否启用流式输出
流式生成实现
# 流式文本生成
print("AI: ", end="", flush=True)
for token in model.generate(
    "What is the meaning of life?",
    streaming=True,
    max_tokens=100
):
    print(token, end="", flush=True)
print()

# 带回调的流式生成
def progress_callback(token_id, response):
    print(f"Generated token {token_id}: {response}")
    return True  # 返回False可中断生成

response = model.generate(
    "Write a story about a robot:",
    callback=progress_callback,
    streaming=True
)

对话会话管理

GPT4All支持多轮对话上下文管理,保持对话的连贯性。

# 创建对话会话
with model.chat_session():
    # 第一轮对话
    response1 = model.generate("Hello, how are you?")
    print(f"AI: {response1}")
    
    # 第二轮对话(保持上下文)
    response2 = model.generate("What can you help me with?")
    print(f"AI: {response2}")
    
    # 查看完整的对话历史
    print("Full conversation history:")
    for msg in model.current_chat_session:
        print(f"{msg['role']}: {msg['content']}")

高级应用示例

代码生成与解释
def generate_python_code(requirement):
    prompt = f"""
Please generate Python code for: {requirement}
Requirements:
1. Include proper comments
2. Follow PEP8 style guide
3. Add type hints
4. Include error handling

Code:
"""
    
    code = model.generate(
        prompt,
        max_tokens=1000,
        temp=0.3,  # 较低温度确保代码准确性
        top_p=0.9
    )
    return code

# 使用示例
python_code = generate_python_code("a function to calculate fibonacci sequence")
print(python_code)
多语言文本处理
def translate_text(text, target_language="Chinese"):
    prompt = f"Translate the following text to {target_language}:\n\n{text}\n\nTranslation:"
    
    translation = model.generate(
        prompt,
        max_tokens=len(text) * 2,  # 预留足够的token空间
        temp=0.5
    )
    return translation

# 批量翻译处理
texts = ["Hello world", "Artificial Intelligence", "Machine Learning"]
translations = [translate_text(text) for text in texts]
内容总结与提取
def summarize_text(long_text, max_length=200):
    prompt = f"""
Please summarize the following text in about {max_length} words:

{long_text}

Summary:
"""
    
    summary = model.generate(
        prompt,
        max_tokens=max_length,
        temp=0.2,  # 低温度确保摘要准确性
        top_p=0.8
    )
    return summary.strip()

错误处理与最佳实践

异常处理
try:
    response = model.generate(
        "非常长的文本输入..." * 100,  # 故意超长输入
        max_tokens=50
    )
except ValueError as e:
    print(f"输入过长错误: {e}")
    # 处理策略:截断或分块处理
except Exception as e:
    print(f"生成错误: {e}")
性能优化建议
# 批量处理优化
def batch_process_texts(texts, batch_size=5):
    results = []
    for i in range(0, len(texts), batch_size):
        batch = texts[i:i+batch_size]
        batch_results = []
        
        for text in batch:
            result = model.generate(
                text,
                max_tokens=100,
                n_batch=32  # 增加批处理大小提升性能
            )
            batch_results.append(result)
        
        results.extend(batch_results)
    return results

# 资源清理
model.close()  # 显式释放模型资源

模型加载与生成流程

以下是GPT4All模型加载和文本生成的完整流程图:

mermaid

通过本节的实践指南,您已经掌握了GPT4All Python SDK的核心功能。合理的参数配置、错误处理机制以及性能优化技巧将帮助您构建更加稳定高效的语言模型应用。

GPU加速与性能优化技巧

在GPT4All Python SDK开发中,充分利用GPU加速和优化性能是提升应用效率的关键。本节将深入探讨如何通过硬件加速、参数调优和最佳实践来最大化模型推理性能。

GPU加速支持架构

GPT4All支持多种GPU加速后端,为不同硬件平台提供优化方案:

后端类型 支持平台 硬件要求 性能特点
CUDA Windows/Linux NVIDIA GPU + CUDA Toolkit 最佳NVIDIA GPU性能,支持Tensor Core
Kompute 跨平台 Vulkan兼容GPU 通用GPU支持,支持AMD/NVIDIA
Metal macOS Apple Silicon/AMD GPU 原生macOS Metal API优化
CPU 全平台 多核CPU 纯CPU推理,兼容性最好

GPU设备初始化与选择

GPT4All提供了灵活的GPU设备选择机制,支持自动检测和手动指定:

from gpt4all import GPT4All

# 自动选择最佳GPU设备
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu')

# 指定CUDA后端
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='cuda')

# 指定具体GPU设备
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='cuda:0')

# 查看可用GPU设备
available_gpus = GPT4All.list_gpus()
print(f"可用GPU设备: {available_gpus}")

GPU层数配置优化

通过调整ngl参数(GPU层数),可以精细控制模型在GPU和CPU之间的计算分配:

# 完全GPU推理(如果VRAM充足)
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu', ngl=100)

# 混合推理:部分层在GPU,部分在CPU
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu', ngl=32)

# 纯CPU推理
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='cpu', ngl=0)

内存优化策略

针对不同VRAM容量的GPU,推荐以下配置策略:

GPU VRAM 推荐模型 ngl设置 批处理大小
4-6GB 3B模型 20-40层 4-8
8-12GB 7B模型 40-60层 8-16
16-24GB 13B模型 60-80层 16-32
24GB+ 30B+模型 80-100层 32-64

多线程CPU优化

即使使用GPU加速,CPU线程配置仍然重要:

# 自动线程数(推荐)
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu')

# 手动指定线程数
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu', n_threads=8)

# 获取当前线程数
thread_count = model.model.thread_count()
print(f"当前线程数: {thread_count}")

批处理优化

通过调整n_batch参数优化推理吞吐量:

# 小批处理(低延迟)
output = model.generate("Hello", n_batch=4, max_tokens=50)

# 大批处理(高吞吐)
output = model.generate("Hello", n_batch=32, max_tokens=50)

# 流式生成优化
with model.chat_session():
    for chunk in model.generate("长篇内容...", streaming=True, n_batch=16):
        print(chunk, end='', flush=True)

上下文长度优化

合理设置上下文长度可以显著影响性能:

# 短上下文(快速响应)
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu', n_ctx=1024)

# 长上下文(复杂任务)
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu', n_ctx=4096)

# 超长上下文(文档处理)
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu', n_ctx=8192)

量化模型选择

选择适当的量化级别平衡性能与质量:

量化级别 文件大小 内存占用 质量 推理速度
Q4_0 中等 中等 良好
Q4_1 稍大 稍大 更好 较快
Q5_0 较大 较大 优秀 中等
Q8_0 最大 最大 接近原始 较慢
# 性能优先
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu')

# 质量优先
model = GPT4All("orca-mini-3b-gguf2-q5_0.gguf", device='gpu')

温度与采样参数优化

调整生成参数实现性能与质量的平衡:

# 快速生成(低温度,高确定性)
output = model.generate("问题", temp=0.1, top_k=20, top_p=0.9)

# 创造性生成(高温度,多样性)
output = model.generate("创意任务", temp=0.8, top_k=50, top_p=0.95)

# 平衡模式
output = model.generate("一般任务", temp=0.5, top_k=40, top_p=0.9)

内存管理最佳实践

正确的内存管理可以避免内存泄漏和性能下降:

# 使用上下文管理器自动清理
with GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu') as model:
    output = model.generate("内容")
# 模型自动关闭

# 手动管理
model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu')
try:
    output = model.generate("内容")
finally:
    model.close()  # 显式释放资源

性能监控与诊断

GPT4All提供了性能监控接口:

model = GPT4All("orca-mini-3b-gguf2-q4_0.gguf", device='gpu')

# 获取后端信息
backend = model.backend
print(f"使用后端: {backend}")

# 获取设备信息
device_name = model.device
print(f"使用设备: {device_name}")

# 监控生成性能
import time
start_time = time.time()
output = model.generate("测试性能", max_tokens=100)
end_time = time.time()
print(f"生成耗时: {end_time - start_time:.2f}秒")
print(f"生成速度: {100/(end_time - start_time):.2f} tokens/秒")

跨平台优化建议

不同平台的优化策略:

Windows平台:

  • 安装最新NVIDIA驱动和CUDA Toolkit
  • 使用CUDA后端获得最佳性能
  • 确保足够的虚拟内存配置

Linux平台:

  • 使用Kompute后端支持多种GPU
  • 配置适当的GPU内存分配
  • 考虑使用CUDA+Docker容器化部署

macOS平台:

  • 使用Metal后端获得原生优化
  • Apple Silicon设备性能最佳
  • 确保足够的统一内存

错误处理与回退机制

实现健壮的GPU加速方案:

def create_model_with_fallback(model_name, preferred_device='gpu'):
    try:
        # 尝试使用GPU
        return GPT4All(model_name, device=preferred_device)
    except Exception as e:
        print(f"GPU初始化失败: {e}, 回退到CPU模式")
        # 回退到CPU
        return GPT4All(model_name, device='cpu')

# 使用带回退的模型创建
model = create_model_with_fallback("orca-mini-3b-gguf2-q4_0.gguf")

通过合理配置GPU加速参数、选择适当的量化模型和实施性能监控,可以显著提升GPT4All应用的推理速度和资源利用率。建议根据具体硬件条件和应用需求,逐步调整优化参数以达到最佳性能表现。

总结

本教程全面介绍了GPT4All Python SDK的开发实战内容,从环境搭建与配置、核心API接口详解、模型加载与文本生成实践,到GPU加速与性能优化技巧。通过本教程,开发者可以掌握如何在不同操作系统上配置开发环境,如何使用丰富的API接口进行模型推理和聊天交互,如何优化模型性能以及如何利用GPU加速提升推理效率。教程提供了详细的代码示例、参数说明和最佳实践,帮助开发者快速上手并构建高效稳定的本地大语言模型应用。

【免费下载链接】gpt4all gpt4all: open-source LLM chatbots that you can run anywhere 【免费下载链接】gpt4all 项目地址: https://gitcode.com/GitHub_Trending/gp/gpt4all

Logo

惟楚有才,于斯为盛。欢迎来到长沙!!! 茶颜悦色、臭豆腐、CSDN和你一个都不能少~

更多推荐