sider的github models的api是无法调用吗?

3 个赞

老样子,加 # ,然后不用管模型获取,因为这个方式无法请求 /v1/models 路由了,直接使用
image

4 个赞

前缀github_pat_是必须的吗

1 个赞

你 github 生成的 token 是什么样的就怎么填

1 个赞


一直报这个错误,是哪地方不对吗

不要管模型更新提示,直接对话调用就行,另外 github models 没有 3.5


填完后这里只有这一个选项,不选的话直接去侧边栏对话,一直显示卡着不动

选模型的地方也只有一个选项3.5

那东西可以修改吗

虽然显示的是3.5,但是估计调用的就是你的自定义模型,我把自定义模型换成一个无效的模型名就对话不了。

自定义模型可以用吗?没看到选项啊?而且我貌似无法对话
image

image

现在发代码要审核了啊,我的 worker 在 sider 上已经跑通了,等管理审批吧

话说佬友你调用api支持sider的功能吗?什么文章总结,视频总结之类的.
GM是没有模型列表的是吗

我懂了,这软件设计得太拉了,我是因为之前填别的 api,所以默认的模型列表有缓存,而 github models 拉取不到新模型,所以模型列表没有更新,然后我就因缘际会可以用上对应的模型。

我整个 worker,这下舒服了:

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

/**
 * 处理传入的请求
 * @param {Request} request
 */
async function handleRequest(request) {
  const { method, url } = request
  const originalUrl = new URL(url)

  // 允许的方法
  const allowedMethods = ['OPTIONS', 'GET', 'POST']
  if (!allowedMethods.includes(method)) {
    return new Response('Method Not Allowed', { status: 405 })
  }

  // 处理 CORS 预检请求
  if (method === 'OPTIONS') {
    return handleOptions()
  }

  // 修改目标 URL
  const targetUrl = new URL(request.url)
  targetUrl.hostname = 'models.inference.ai.azure.com'
  // 移除路径中的 /v1 前缀
  targetUrl.pathname = originalUrl.pathname.replace(/^\/v1/, '')

  // 创建新的请求,保留原始请求的头部和方法
  const newRequest = new Request(targetUrl.toString(), {
    method: request.method,
    headers: request.headers,
    body: request.method === 'POST' ? request.body : null,
    redirect: 'follow'
  })

  try {
    const response = await fetch(newRequest)

    // 如果请求路径是 /v1/models,则修改响应
    if (originalUrl.pathname === '/v1/models') {
      // 解析响应为 JSON
      const data = await response.json()

      // 确保响应是一个数组
      if (Array.isArray(data)) {
        let modifiedData = data.map(item => {
          const newItem = { ...item }
          if ('id' in newItem) {
            newItem.id_original = newItem.id
            delete newItem.id
          }
          if ('name' in newItem) {
            newItem.id = newItem.name
            delete newItem.name
          }
          return newItem
        })
        modifiedData = JSON.stringify(
          {'data': modifiedData}
        )
        
        // 返回修改后的响应
        return new Response(modifiedData, {
          status: response.status,
          statusText: response.statusText,
          headers: {
            ...response.headers,
            'Content-Type': 'application/json'
          }
        })
      } else {
        // 如果响应不是数组,直接返回原始响应
        return response
      }
    }

    // 对于其他路径,直接返回原始响应
    return response
  } catch (error) {
    return new Response('Internal Server Error', { status: 500 })
  }
}

/**
 * 处理 CORS 预检请求
 */
function handleOptions() {
  return new Response(null, {
    status: 204,
    headers: {
      'Access-Control-Allow-Origin': '*',
      'Access-Control-Allow-Methods': 'GET, POST, OPTIONS',
      'Access-Control-Allow-Headers': 'Content-Type, Authorization',
      'Access-Control-Max-Age': '86400'
    }
  })
}

有模型列表,但是请求路径和响应跟 oai 默认不一样

这些功能我用得很少,类似这样吗

image

是,这个是可以总结的吗?我那个貌似只能聊天而已

我是点这里的【总结】,这里貌似就是系统提示词?

image

部署到CF吗?佬友

是的,cf worker 每天10万次免费调用,够用的