免费的大语言模型API接口

前言

最近在搞公司的一个论坛网站,但是想要用AI审核评论和贴子的内容,原本是想使用Chat GPT,但是发现用起来还挺麻烦,不仅是技术上的问题,冲个会员也麻烦,国内的visa和master card信用卡不支持,我用我汇丰银行的master card也不信,真是服了,索性找点免费的用用,

其实这种资源还蛮多的,比如https://github.com/popjane/free_chatgpt_api传送门,不过我用了一段时间,这个老是出现各种请求不到的问题。又找了一下,发现ollama也给了好几个模型可以免费调用API,如图(也可访问https://ollama.com/v1/models):

使用方法

注册

直接点击https://ollama.com/settings/keys注册一个账号,这个步骤过于简单,有手就行,就不必赘述了。

创建API KEY

然后点击页面左侧的Keys(没找到这个页面的话就再点一下上面的链接),然后点击Add a API Key,然后输入一个名称(可选)就完了,是的,就这么简单。把api key复制出来,等会要用。

调用

这里以Java代码为例,其他语言和应用也是类似的操作方法,我这里导入了hutool和相关的库,不用这些库也是可以实现的,根据你的实际情况来就行了。

java 复制代码
package club.beiyou.wordpress.utils;

import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;

public class ChatGPTClient {

    private static final String API_KEY = "你的api key";

    private static final String API_URL = "https://ollama.com/v1/chat/completions";

    private static final String MODEL = "gpt-oss:120b";//这个模型就是上面模型列表中的id,复制过来就行

    public static void main(String[] args) {
        System.out.println(chatWithGPT("请帮我写一个Java的快速排序的代码,谢谢。"));
    }

    public static String chatWithGPT(String prompt) {
        JSONObject message = new JSONObject()
                .set("role", "user")
                .set("content", prompt);

        JSONObject body = new JSONObject()
                .set("model", MODEL)
                .set("messages", JSONUtil.createArray().set(message));

        HttpResponse response = HttpRequest.post(API_URL)
                .header("Content-Type", "application/json")
                .header("Authorization", "Bearer " + API_KEY)
                .body(body.toString())
                .timeout(30_000)
                .execute();

        if (response.isOk()) {
            try {
                JSONObject resJson = JSONUtil.parseObj(response.body());
                return resJson.getJSONArray("choices")
                        .getJSONObject(0)
                        .getJSONObject("message")
                        .getStr("content");
            } catch (Exception e) {
                throw new RuntimeException(e);
            }
        } else {
            throw new RuntimeException("Request failed, HTTP status code: " + response.getStatus() + ", response body: " + response.body());
        }
    }

}

运行代码输出:

注意事项

这个服务并不是完全没有限制的,他还是有用量限制,具体根据什么来我也不太清楚,反正每个小时和每个礼拜都有限制,可以看一下这usage这个地方:

相关推荐
九年义务漏网鲨鱼7 分钟前
【大模型面经】千问系列专题面经
人工智能·深度学习·算法·大模型·强化学习
北京耐用通信21 分钟前
“耐达讯自动化Profibus总线光端机在化工变频泵控制系统中的应用与价值解析”
人工智能·科技·物联网·网络安全·自动化·信息与通信
2401_8658548821 分钟前
AI软件可以帮助我自动化哪些日常任务?
运维·人工智能·自动化
WWZZ20251 小时前
快速上手大模型:深度学习7(实践:卷积层)
人工智能·深度学习·算法·机器人·大模型·卷积神经网络·具身智能
简佐义的博客2 小时前
Genome Biol. IF 9.4 Q1 | ATAC-seq 数据分析实用指南,根据本文就可以构建ATAC生信分析流程了
人工智能
老蒋新思维2 小时前
陈修超入局:解锁 AI 与 IP 融合的创新增长密码
网络·人工智能·网络协议·tcp/ip·企业管理·知识付费·创客匠人
San30.2 小时前
从代码规范到 AI Agent:现代前端开发的智能化演进
javascript·人工智能·代码规范
DO_Community2 小时前
基于AI Agent模板:快速生成 SQL 测试数据
人工智能·python·sql·ai·llm·ai编程
HeteroCat3 小时前
关于No Chatbot的思考
人工智能
咚咚王者3 小时前
人工智能之数据分析 numpy:第一章 学习链路
人工智能·数据分析·numpy