源代码级的一步一步编写自己的Batch,OpenAI的半价批处理 API

OpenAI 面向开发者推出 Batch 批处理 API,可在 24 小时内给出结果,并提供 API 半价折扣。

新的 Batch API 适用于异步任务处理,如当开发者需要处理大量文本、图片、摘要时,就可以使用该 API,OpenAI 会在 24 小时内给出处理结果。这样 OpenAI 可以在非高峰期处理,节约服务器资源,并为开发者提供半价优惠,解锁更高的速率限制。

下面直接上源代码:

github地址:https://github.com/xing61/zzz-api

上传batch数据

API_SECRET_KEY = "你的智增增获取的api_key";
BASE_URL = "https://api.zhizengzeng.com/v1"; #智增增的base_url

# files
def files():
    client = OpenAI(api_key=API_SECRET_KEY, base_url=BASE_URL)
    resp = client.files.create(
        file=open("test.jsonl", "rb"),
        purpose='batch'
    )
    print(resp)
    return resp.id


创建batch

API_SECRET_KEY = "你的智增增获取的api_key";
BASE_URL = "https://api.zhizengzeng.com/v1"; #智增增的base_url

def batches(file_id):
    client = OpenAI(api_key=API_SECRET_KEY, base_url=BASE_URL)
    resp = client.batches.create(input_file_id=file_id,
                                 endpoint="/v1/chat/completions",
                                 completion_window="24h")
    print(resp)
    return resp.id


检查batch是否完成

要注意的是:

上一步提交完batch任务之后,是需要一段时间来执行结果的,时长取决于你的数据量大小、当下任务数、openai的算力是否充足等等。

API_SECRET_KEY = "你的智增增获取的api_key";
BASE_URL = "https://api.zhizengzeng.com/v1"; #智增增的base_url

def retrieve(bid):
    client = OpenAI(api_key=API_SECRET_KEY, base_url=BASE_URL)
    resp = client.batches.retrieve(bid)
    print(resp)
    return resp.id


获取batch结果

API_SECRET_KEY = "你的智增增获取的api_key";
BASE_URL = "https://api.zhizengzeng.com/v1"; #智增增的base_url

def get_result(fid):
    client = OpenAI(api_key=API_SECRET_KEY, base_url=BASE_URL)
    content = client.files.content(fid)
    print(content.text);

完功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值