GitHub-Models-使用指南

一、GitHub Models

GitHub Models 是GitHub最新推出的模型托管服务,提供免费的AI模型供开发者测试。可以使用的模型有 GPT-4o、Phi 3、Llama 3.1等,可以说很全面的了。现在可以申请加入waitlist,通过后就可以使用这些模型了。

二、模型调用

GitHub Models提供了Playground 进行调试,当然也可以直接使用API。例如使用cURL请求:

curl -X POST "https://models.inference.ai.azure.com/chat/completions" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer $GITHUB_TOKEN" \
    -d '{
        "messages": [
            {
                "role": "system",
                "content": "You are a helpful assistant."
            },
            {
                "role": "user",
                "content": "What is the capital of France?"
            }
        ],
        "model": "gpt-4o"
    }'

调用方式和OpenAI基本一致,只是请求地址从api.openai.com/v1变成了models.inference.ai.azure.com,使用GITHUB_TOKEN作为apikey。

三、接入 one-api

我喜欢用one-api来进行api管理。但是GitHub Models的请求地址因为少了 /v1 没办法直接接入one-api。这里选择用cloudflare workers做一个接口转发,去除请求地址中的/v1

addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  const url = new URL(request.url)

  if (url.pathname.startsWith('/v1')) {
    const newUrl = new URL(request.url)
    newUrl.hostname = 'models.inference.ai.azure.com'
    newUrl.pathname = newUrl.pathname.replace('/v1', '') 

    const newRequest = new Request(newUrl, {
      method: request.method,
      headers: request.headers,
      body: request.body
    })

    return fetch(newRequest)
  }

  return fetch(request)
}

使用worker的URL作为API地址,GITHUB_TOKEN作为apikey就可以将GitHub Models接入one-api了。

四、使用体验

因为已经集成到one-api了,所以可以很方便的在各种AI应用中调试,例如在open-webui里使用:

响应速度还是挺快的,不过和官方模型用起来有些差异,应该是版本有些不同。最后是模型使用限制,GPT-4o免费用户上下文限制到了8k,每分钟请求最大为10,每天最多请求50次。用来测试应用的话应该是够用的。

原文:GitHub Models 使用指南 - iOnosyne's Blog

64 个赞

8k 是有點少了 拿來做fc剛剛好 :yum:

6 个赞

感谢分享,不过不中转也可以,选择自定义

9 个赞

如果不需要用到 embedding 模型的话,也可以通过 # 屏蔽掉 oneapi 增补的路由,省掉一点转发的过程

6 个赞

谢谢分享,大佬六六六

2 个赞

不需要转发,按照上面的 zhong_little 就可以了
非常丝滑

2 个赞

感谢大佬教程!

4 个赞

这个用法真的天才!

1 个赞

感谢分享好人

1 个赞

再补充一下github Models支持的模型和用量限制等级:

支持的模型,按照限制等级排列:

限制等级 模型名称
High AI21-Jamba-Instruct, cohere-command-r-plus, meta-llama-3-70b-instruct, meta-llama-3.1-405b-instruct, meta-llama-3.1-70b-instruct, Mistral-large, Mistral-large-2407
Low cohere-command-r, meta-llama-3-8b-instruct, meta-llama-3.1-8b-instruct, Mistral-nemo, Mistral-small, gpt-4o, gpt-4o-mini, Phi-3-medium-128k-instruct, Phi-3-medium-4k-instruct, Phi-3-mini-128k-instruct, Phi-3-mini-4k-instruct, Phi-3-small-128k-instruct, Phi-3-small-8k-instruct, Phi-3.5-mini-instruct
Embeddings cohere-embed-v3-english, cohere-embed-v3-multilingual, text-embedding-3-large, text-embedding-3-small

限制等级

4 个赞

就是不知道按每个模型限制还是按分类限制

1 个赞

应该按模型来吧,按分类来就太少了 tieba_089

1 个赞

不错哟!!!!

1 个赞

我刚好要这个embedding模型,4o群里已经有好几个公益Api 了,刚看了下,通过了

1 个赞

embedding 一天 150 次,还是挺少的,有条件就多堆几个号

1 个赞

这就去试试,反正免费

1 个赞

学习了,感谢大佬分享

1 个赞

mark,感谢分享

1 个赞

是說模型的限制可以去哪裡看
想知道說其他的模型輸入和輸出有哪些限制

1 个赞

不是有文档?

1 个赞