Danswer 接入 Llama 2 模型 | 免费在 Google Colab 上托管 Llama 2 API

基于 LLaMA 和 LangChain 实践本地 AI 知识库 本文讨论了人工智能领域的最新发展,主要围绕着基于 Transformer 和 MoE 架构的多模态模型 Gemini 1.5 Pro,以及 OpenAI 推出的支持从文字生成视频的模型 Sora。文章提到通用人工智能(AGI)的实现正在加速,指出 AI 应用落地的主要实践围绕大模型微调、提示词工程和知识增强展开。在介绍 LangChain 中的知识库构建过程中,涉及 Loader、Splitter、Embeddings 和 VectorStore 等步骤。此外,还讨论了 RAG 和 GPTs 在实践中的应用 阅读详情

一、前言

前面在介绍本地部署免费开源的知识库方案时,已经简单介绍过 Danswer《Danswer 快速指南:不到15分钟打造您的企业级开源知识问答系统》,它支持即插即用不同的 LLM 模型,可以很方便的将本地知识文档通过不同的连接器接入到 Danswer,然后实现本地基于知识库的语义检索。它是完全开源的(MIT 许可证)并且免费使用。

1.1、为什么选择 Danswer

默认设置下,Danswer 使用 OpenAI 的 GPT 系列模型,由于很多时候我们因为数据隐私问题需要在本地部署离线的知识库系统,需要接入本地开源的模型,今天本文将简单介绍下如何使用开源模型 Llama 2 接入 Danswer。

至于为什么选择 Danswer,简单啰嗦一下,更具体的信息可以访问官方文档:

  • 它是完全开源的(MIT 许可证)并且免费使用。

  • 允许您即插即用不同的 LLM 模型,例如 GPT、HuggingFace、GPT4All、Llama cpp,甚至自定义自托管模型。

  • 具有开箱即用的关键功能,如文档访问控制、前端 UI、管理仪表板、轮询文档更新和灵活的部署选项。

  • 与 Slack、GitHub、GoogleDrive 等其他工具的连接器的不错列表。

1.2、为什么选择 Llama 2

自从 Meta 公司发布了最新的 LLaMA 2 模型并且开源之后,在LLM领域掀起了一阵不小的浪潮,至少从各种排行榜和评估结果来看,Llama 2 在开源界要优于其它的产品,它击败了 Falcon-40B(之前最好的开源基础模型),与 GPT-3.5 相当,仅低于 GPT-4 和 PALM 2(均为闭源模型,分别由 OpenAI 和 Google 拥有)。

从以上排行榜不难看出,基本上整个列表大部分的开源模型都是由 Llama 2 衍生品组成的。

二、在 Google Colab 上托管 Llama 2 模型

Llama 2 型号有 3 种不同尺寸:7B、13B 和 70B 参数。700 亿参数版本需要多个 GPU,因此无法免费托管。在 13B 和 7B 版本中,13B 版本更强大,但需要一些压缩(量化或降低浮点精度)才能适合单个中档 GPU。幸运的是,Llama cpp 库使这变得相当简单。这里我们将以 Llama 2 13B量化模型来进行演示。

在开始之前,请确保在 Google Colab 上设置了 T4 GPU 运行时

2.1、安装依赖

  • 运行 FastAPI 服务器所需的依赖项

  • 通过 Ngrok 创建公共模型服务 URL 所需的依赖项

  • 运行 Llama2 13B(包括量化)所需的依赖项

# 构建 Llama cpp
!CMAKE_ARGS="-DLLAMA_CUBLAS=on" FORCE_CMAKE=1 pip install llama-cpp-python

# 如果出现依赖解析器的错误提示,可以忽略
!pip install fastapi[all] uvicorn python-multipart transformers pydantic tensorflow

# 这将在 Google Colab 实例中下载并设置 Ngrok 可执行文件
!wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
!unzip -o ngrok-stable-linux-amd64.zip

Ngrok 用于通过公共 URL 访问 FastAPI 服务器。

用户需要创建一个免费账户并提供他们的身份验证令牌以使用 Ngrok。免费版本只允许一个本地隧道,并且身份验证令牌用于跟踪此使用限制。

在 Ngrok 设置页面上获取 Auth token,如图中红框所示

# https://dashboard.ngrok.com/signup
!./ngrok authtoken <YOUR-NGROK-TOKEN-HERE>

2.2、创建 FastAPI 应用

这里提供了一个与 Llama 2 模型交互的 API。可以根据需要在下面的代码中更改模型版本。在这个演示示例中,我们将使用 130 亿参数版本,该版本经过微调以进行指令(聊天)跟随。尽管进行了压缩,但它仍然比 70 亿变体更强大。

%%writefile app.py
from typing import Any

from fastapi import FastAPI
from fastapi import HTTPException
from pydantic import BaseModel
from huggingface_hub import hf_hub_download
from llama_cpp import Llama
import tensorflow as tf

# 在 T4 GPU 上拟合 Llama2-13B 需要 GGML 模型
GENERATIVE_AI_MODEL_REPO = "TheBloke/Llama-2-13B-chat-GGML"
GENERATIVE_AI_MODEL_FILE = "llama-2-13b-chat.ggmlv3.q5_1.bin"

model_path = hf_hub_download(
    repo_id=GENERATIVE_AI_MODEL_REPO,
    filename=GENERATIVE_AI_MODEL_FILE
)

llama2_model = Llama(
    model_path=model_path,
    n_gpu_layers=64,
    n_ctx=2000
)

# 测试推理
print(llama2_model(prompt="Hello ", max_tokens=1))

app = FastAPI()

# 这里定义了端点所期望的数据 JSON 格式,根据需要进行更改
class TextInput(BaseModel):
    inputs: str
    parameters: dict[str, Any] | None

@app.get("/")
def status_gpu_check() -> dict[str, str]:
    gpu_msg = "Available" if tf.test.is_gpu_available() else "Unavailable"
    return {
        "status": "I am ALIVE!",
        "gpu": gpu_msg
    }

@app.post("/generate/")
async def generate_text(data: TextInput) -> dict[str, str]:
    try:
        params = data.parameters or {}
        response = llama2_model(prompt=data.inputs, **params)
        model_out = response['choices'][0]['text']
        return {"generated_text": model_out}
    except Exception as e:
        raise HTTPException(status_code=500, detail=str(e))

2.3、启动 FastAPI 服务器

由于需要下载模型并将其加载到 GPU 上,初始运行时间会很长。

注意:中断 Google Colab 运行时会发送 SIGINT 并停止服务器。

# 此单元格很快完成,因为它只需要启动服务器
# 服务器将开始下载模型,并需要一段时间才能启动
# 约 5 分钟
!uvicorn app:app --host 0.0.0.0 --port 8000 > server.log 2>&1 &

检查 server.log 日志以查看进度。在继续之前,请等待模型加载完成并使用下一个单元格进行检查。

# 如果看到 "Failed to connect",那是因为服务器仍在启动中
# 等待模型下载完成和服务器完全启动
# 检查 server.log 文件以查看状态
!curl localhost:8000

2.4、使用 Ngrok 为 FastAPI 服务器创建公共 URL。

重要提示:如果您通过电子邮件创建了一个账户,请验证您的电子邮件,否则下面的两个单元格将无法正常工作。

如果您通过 Google 或 GitHub 账户注册,那就没问题了。

# 这将启动 Ngrok 并创建一个公共 URL。
from IPython import get_ipython
get_ipython().system_raw('./ngrok http 8000 &')

检查下一个单元格生成的 URL,它应该显示 FastAPI 服务器正在运行,并且 GPU 可用。

要访问模型的端点,只需在 URL 后面添加 /generate。

curl --location --request POST '<REPLACE-WITH-YOUR-NGROK-PUBLIC-URL>/generate' \
--header 'Content-Type: application/json' \
--data-raw '{
    "inputs": "请介绍下 Danswer 如何接入 Llama 2 模型?",
    "parameters": {
        "temperature": 0.0,
        "max_tokens": 25
    }
}'
# 获取公共 URL
# 如果无法正常工作,请确保您已验证您的电子邮件。
# 然后再次运行上一个代码单元格和这个代码单元格。
!curl -s http://localhost:4040/api/tunnels | python3 -c "import sys, json; print(json.load(sys.stdin)['tunnels'][0]['public_url'])"

2.5、关闭服务

要关闭进程,请在一个新的单元格中运行以下命令:

!pkill uvicorn
!pkill ngrok

[Google Colab 代码]

https://colab.research.google.com/drive/1HhqGGzV-q1m0igdhpGt5Wmf8VmDiyIcn#scrollTo=liqVEsGfZPse

三、在 Danswer 中接入 Llama 2 模型

Danswer 可以通过 REST 请求向任意模型服务器发出请求。可以选择传入访问令牌。要自定义请求格式和响应处理,可能需要更新/重建 Danswer 容器。

3.1、部署 Danswer

Danswer 提供 Docker 容器,可以轻松部署在任何云上,无论是在单个实例上还是通过 Kubernetes。在本演示中,我们将使用 Docker Compose 在本地运行 Danswer。

首先拉去 danswer 代码:

git clone https://github.com/danswer-ai/danswer.git

接下来导航到部署目录:

cd danswer/deployment/docker_compose

Danswer 默认使用的模型是 GPT-3.5-Turbo,如果想使用开源的如 Llama 2 模型API,通过创建 .env 文件来覆盖一些默认值(针对 Linux 显示),将 Danswer 配置为使用新的 Llama 2 端点:

GEN_AI_MODEL_PROVIDER=custom  
GEN_AI_API_ENDPOINT=<REPLACE-WITH-YOUR-NGROK-PUBLIC-URL>/generate  

3.3、添加文档到 Danswer

这里我们将 Danswer 文档网站建立索引。只需要在Web连接器中添加文档URL地址即可。

3.4、从 Danswer 获取答案

单击 Danswer 徽标返回主页,现在您可以询问有关新索引文档的问题。

四、总结

本文主要介绍了如何在Google Colab上托管Llama 2模型,并将其接入Danswer。Danswer是一个开源的知识问答系统,支持不同的LLM模型,可以方便地将本地知识文档接入到Danswer,实现基于知识库的语义检索。

虽然使用 Google Colab 可以免费托管您的 LLM,但是需要注意以下几点:

  • Google Colab 更适用于开发目的,如果您想要永久端点,可能需要投资专用硬件,因为在一段时间不活动后,Google Colab 将回收实例。也可考虑在 HF 上托管。

  • 免费套餐中不支持高端 GPU 如 A100。

  • 在免费套餐中,每个会话最多只能申请 12 小时的实例。

五、References

[1] Danswer 代码:https://github.com/danswer-ai/danswer

[2] Danswer 文档:https://docs.danswer.dev/

【云原生之Docker实战】在Docker环境部署Answer问答平台 阅读详情

相关推荐

英飞凌功率MOSFET SPICE 瞬态仿真不收敛问题解决(基于TINA)

英飞凌功率MOSFET SPICE仿真容易出现不收敛问题,这个对于IGBT和SIC的管子应该是一样的,在瞬态仿真分析中,出现如下图所示的报错,Convergence problem。spice是为线性电路设计的,例如运算放大器、线性电源等,不是专门仿真开关电路的。在瞬态仿真时,仿真器是要不断迭代求解的,开关快速的跳变,容易在迭代式出现不收敛的问题。,由于时间步长减少,会消耗更多的计算机内存,如果运行多次内存消耗过大,会报“Out of memory”.解决方法是:报错工程,重启软件,内存重新计算。

miaoxiaokeji的博客 2295

LLMs-入门二:基于google云端Colab部署Llama 2

由于不是所有GPU都支持深度计算(大部分的Macbook自带的显卡都不支持),同时显卡配置的高低也决定了计算力的大小,因此Colab最大的优势在于我们可以“借用”谷歌免费提供的GPU来进行深度学习。注:如果使用Colab没有购买硬件加速器,而使用免费的T4 GPU,在安装到该步骤后大概率会出现内存崩溃的情况。如果想继续使用,需要想办法购买Colab方案才可以。Colab提供5种硬件加速器,如果需要使用A100GPU、V100GPU需要单独付费,其他类型的硬件加速器效果不是很理想,适合的Colab方案如下。

Josong的博客 3709

H3C IPsec over GRE VPN 实验

配置 IPsec over GRE VPN 来连通两端内网

M建的博客 2463

Danswer 快速指南:不到15分钟打造您的企业级开源知识问答系统

至于为什么需要做企业知识库,知识问答检索系统,以及现有GPT模型在企业应用中存在哪些劣势,今天在这里就不再赘述了,前面介绍其他构建知识库案例的文章中基本上都有讲过,如果您有兴趣可以去翻翻历史文章来了解。今天就直接进入主题,介绍一款还不错的开源项目Danswer,相较于其他开源的产品来说,从 Danswer 的设计上来来看确实存在一定的优势和可以参考的地方,其中最值得一提的还属Connectors连接器。目前官方已经提供了12。

FrenzyTechAI的博客 1432

VBOX 3iS实战:如何用GNSS+IMU搞定车辆动态坡度测量(附避坑指南)

本文详细介绍了VBOX 3iS在车辆动态坡度测量中的高阶应用,通过GNSS+IMU融合技术和卡尔曼滤波算法,有效解决了传统测量方法在动态环境中的局限性。文章提供了设备配置、实战策略和数据后处理的实用指南,帮助工程师提升测量精度和效率。

weixin_42520796的博客 321

使用DrissionPage实现携程酒店信息智能爬取

本文介绍了一个基于DrissionPage技术的携程酒店信息爬虫系统,通过监听API数据包实现高效采集。系统可自动获取酒店名称、价格、评分、位置等15个维度的数据,支持多页滚动加载和智能去重。相比传统爬虫,该方法直接解析API返回的JSON数据,避免了复杂的HTML解析和加密参数分析,提高了开发效率和稳定性。文章详细阐述了13个关键实现步骤,并强调数据采集应严格遵守法律法规,仅用于技术学习和市场研究。该系统可为旅游决策、价格监测等提供数据支持,但需注意合理使用频率和隐私保护。

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 386

Danswer部署指南

【代码】Danswer部署指南。

好好学电脑 1892

AI在保险产品定价优化中的创新应用

在当今保险市场中,准确合理的产品定价是保险公司实现可持续发展的关键因素之一。传统的保险产品定价主要基于经验数据和精算模型,但这种方式往往存在数据处理效率低、对复杂风险因素考虑不足等问题。本文的目的在于深入探讨AI技术如何在保险产品定价中进行创新应用,以提高定价的准确性、效率和灵活性,更好地满足市场需求和客户个性化需求。本文的范围涵盖了AI技术在保险产品定价各个环节的应用,包括风险评估、费率计算、产品设计等方面。同时,还会涉及到相关的核心算法、数学模型以及实际应用案例等内容。

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 982

大模型太贵用不起?教你如何用Google Colab免费运行大语言模型!

当然,还有其他一些开源模型平台,比如Hugging Face、Fireworks AI等,上面有很多优质的模型可以选择。只需要一个Google账号,就可以在云端编写和运行Python代码了,再也不用担心电脑跑不动了。OpenAI的大家都知道,但其实Azure OpenAI也不错,更适合企业用户。那么,我们该如何用Google Colab 运行大模型?而且,它还支持GPU加速,让大模型的训练更快更轻松。不过,我找到了一些省钱的方法,想和大家分享一下。现在大模型真的很火,但用起来好贵呀!

独立开发,substack顶级编辑 1203

【前端圭臬】二:你知道的和不知道的 HTML

关于 HTML,说几个你可能不太关注的问题。

Evan 的博客 4758

Matlab实现雷达波位编排

1 简介 %本程序用于雷达球坐标系到正弦空间坐标系的转换,以及相控阵雷达的波位编排。 2 完整代码 ​%070228添加波位数据保存clear allclose allclc%波束宽度,单位:度BeamWidth = 3.6;theta05 = round(sin(BeamWidth*pi/180)*1000)/1000;%雷达作用空域AZ = [-15 15]; %方位角范围(雷达球坐标系),单位:度EL = [0 30]; %俯仰角范围(雷

qq_59747472的博客 2479

Llama 2免费托管及API提供

Llama 2 是 Meta 最新的文本生成模型,目前其性能优于所有开源替代方案。推荐:用快速搭建可编程3D场景。

新缸中之脑 1686

微信小程序 - 详细解决map地图上使用自定义图标图片或自定义样式进行markers标记点,手机真机运行时安卓系统、苹果ios系统会出现不显示标记点的问题(大概率安卓正常显示标记点,但苹果就加载失败)

微信小程序,map,地图组件,安卓android,苹果ios,真机调试,marker,标记点,在地图上标记,突然就不显示白屏了没动代码,自定义标记点icon,label动态数字,小程序地图markers标记点显示不出来,微信小程序map组件,地图加载后marker标记点ios设备不显示,android正常显示,添加多个标记点。安卓能正常显示标记点图标,IOS设备不显示标记点图标,map地图白屏不显示标记,图标真机调试不显示,自定义图标,报错,页面白屏,不报错也不显示,无法加载,图片展示不出来,iconPat

✅ 精选推荐文章 5956

「开源项目」开源企业级问答系统-Danswer

开源企业级问答系统,可以对内部文档进行自然语言提问,并返回可靠的答案、引用和参考资料,可以连接到多种常见工具,如Slack、GitHub和Confluence。

qq_36765367的博客 1382

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

大模型部署工具 llama.cpp 介绍与安装使用

另外一个是量化,量化是通过牺牲模型参数的精度,来换取模型的推理速度。llama.cpp 提供了大模型量化的工具,可以将模型参数从 32 位浮点数转换为 16 位浮点数,甚至是 8、4 位整数。训练的过程,实际上就是在寻找模型参数,使得模型的损失函数最小化,推理结果最优化的过程。训练完成之后,模型的参数就固定了,这时候就可以使用模型进行推理,对外提供服务。大模型时代,企业对人才的需求变了,AIGC相关岗位人才难求,薪资持续走高,AI运营薪资平均值约。llama.cpp 提供了模型量化的工具。

youmaob的博客 1万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

企业级开源AI搜索工具Danswer - 汉化对照表

Danswer是一个可跨所有工作场景工具的开源AI搜索工具,可用于自然语言查询的文档搜索 + AI 答案。Danswer可连接到所有常见工作场景及应用,如 Google Drive、Confluence、Slack 等。支持聊天(想想 ChatGPT,但它可以访问您的私人知识源)。创建具有不同提示和支持知识集的自定义人工智能助手。Slack 集成可直接在 Slack 中获取答案和搜索结果。本文主要对Danwer进行了前端内容的汉化和含义解释,出于个人理解,部分内容可能与原内容含义部分,还请大佬指出。

qq_51495214的博客 2825

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Llama 2 云端部署与API调用【AWS SageMaker】

Meta 刚刚发布了 Llama 2 大模型。如果你和我们一样,你一定会迫不及待地想要亲自动手并用它来构建。推荐:用快速搭建可编程3D场景。使用任何类型的 LLM 进行构建的第一步是将其托管在某处并通过 API 使用它。然后你的开发人员可以轻松地将其集成到你的应用程序中。本指南将介绍如何在Amazon SageMaker 上托管 Llama 2 模型,以及如何利用 AWS Lambda 和 AWS API Gateway 通过 API 使用模型。在开始之前,请前往amazon aws 登录或注册帐户。

新缸中之脑 7894

Google Colab002 中解决缺包(需要安装,包)No module named ‘包名’问题

Google Colab002 中解决缺包(需要安装,包)No module named ‘包名’问题

wukongbuku的博客 1254

免费GPU~Colab基本使用及配置(保姆级教程)

话不多说 直接甩图,看看白嫖的GPU配置如何!!! 这对没钱的学生可谓是天花板了把~~~ 跟着我一步一步操作,你也可以的! 0.创建一个谷歌账号并且登录 使用Colab之前需要有一个谷歌账号,并且可以上网,否则,哼,啥都别想! 可关注公众号"蓝胖胖干货",按照菜单栏的指引操作 (不要问我怎么知道的)(为什么不用电脑注册呢?也不用问了,都是自己亲身经历出来的) 此处略去一千个字!!!! 1.登陆谷歌云盘 确保可以上网之后,输入网址https://drive.google...

haoji007的博客 5526

【Google Colab】写代码(Python)有个浏览器就够了

Colaboratory 简称“Colab”,是 Google Research 团队开发的一款产品。在 Colab 中,任何人都可以通过浏览器编写和执行任意 Python 代码。它尤其适合机器学习、数据分析和教育目的。

风高秋月白,雨霁晚霞红 4634

关于谷歌Colab使用心得的总结

目录colab介绍首先要能够科学上网基本信息环境配置常用操作文件管理上传文件到谷歌drivecolab挂载谷歌drive将Github存储库克隆到Google Colab文件运行 colab介绍 首先要能够科学上网 官网介绍 https://colab.research.google.com/notebooks/intro.ipynb# 官网常见问题解答 https://research.google.com/colaboratory/faq.html 基本信息 Colab 提供哪些类型的 GPU?

大龙的编程学习笔记 8845

google colab连接谷歌云盘

在做深度学习项目时,我们一定会需要一个服务器,有时候因为条件限制没有服务器,可以用google的colab来跑我们的程序,它最大的特点是有GPU支持,型号Tesla K80 GPU(据说已经换了新的英伟达P100 GPU,但我尝试了一下还是Tesla K80),那如何使用colab呢 1.使用谷歌云盘 如果第一次使用,需要在:我的云端硬盘—>更多—>关联更多应用中关联Google Co...

qq_40268255的博客 5039

Google Colab使用初体验

我是在这个微信推文上看到Google居然免费开放使用它的GPU还有TPU,不得不佩服一下Google的开源精神,虽然机子很老,GPU是Tesla K80,还能使用TPU,但是居然能用总没有要强,毕竟不要钱,省了电费与装机费嘛,玩玩还是可以的。而且GPU作为后摩尔时代的主要算力提供者,未来推广性能更强大的GPU,必然成为趋势。 主题先来看看这个。 https://blog.youkuaiyun.com/co...

edward_zcl的博客 3239

colab 使用注意事项

google公司始终坚持着它的伟大企业文化,就像他们的产品一样,总是能正在的提高生产力,造福全世界一样,colab就是其中一个伟大的产品,真的非常棒!但这个文章仅说其缺点或不足吧。 1. 上传大量的图片数据时,上传图片的数量有可能出错,比如上传了10000张图片,上传成功后显示“”成功上传10000张图片“ ,但是有可能上传了10020张,多了20张,这20张图是与原图片重复的。重复的名...

u011304078的博客 4426

使用Google colaboratory挂载Google Driver的数据进行训练

# 授权 !apt-get install -y -qq software-properties-common python-software-properties module-init-tools !add-apt-repository -y ppa:alessandro-strada/ppa 2&gt;&amp;1 &gt; /dev/null !apt-get update -qq 2&g...

生命不息,Coding不止 3736

使用Google colab进行机器学习项目开发

您是否曾经想要一个易于配置的交互环境来运行您的机器学习代码,免费访问图GPU?Google Colab 正是我们要找的。在云上运Jupyter notebooks是一种方便易用的方式,但是免费版本对GPU的使用也做了一定的限制,但不影响我们基本的代码开发使用GPU。 通过本博客,可以了解到以下技能: Google Colab 使用免费GPU加速训练 使用Google Colab 的扩展包将数据保存到Google Drive, 为pandas ,DataFrame等提供交互式显示。 使用Google Col

@bangbang的博客 1975
上一篇: 如何使用LoRA和PEFT微调 Mistral 7B 模型
下一篇: 埃隆·马斯克的 AI 聊天机器人 Grok 已经上线
技术狂潮AI
博客等级 码龄3年 1282粉丝 137原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技术狂潮AI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值