Merge branch 'upstream/main'

This commit is contained in:
Laisky.Cai 2024-12-22 02:50:40 +00:00
commit dc181dd7fa
9 changed files with 32 additions and 49 deletions

View File

@ -6,7 +6,6 @@ on:
- "master"
- "main"
- "test/ci"
# - "feature/flux"
jobs:
build_latest:

View File

@ -41,7 +41,7 @@ func getLarkUserInfoByCode(code string) (*LarkUser, error) {
if err != nil {
return nil, err
}
req, err := http.NewRequest("POST", "https://passport.feishu.cn/suite/passport/oauth/token", bytes.NewBuffer(jsonData))
req, err := http.NewRequest("POST", "https://open.feishu.cn/open-apis/authen/v2/oauth/token", bytes.NewBuffer(jsonData))
if err != nil {
return nil, err
}

View File

@ -37,16 +37,16 @@ func (a *Adaptor) GetRequestURL(meta *meta.Meta) (string, error) {
action := ""
switch meta.Mode {
case relaymode.Embeddings:
action = "batchEmbedContents?"
action = "batchEmbedContents"
default:
action = "generateContent?"
action = "generateContent"
}
if meta.IsStream {
action = "streamGenerateContent?alt=sse&"
action = "streamGenerateContent?alt=sse"
}
return fmt.Sprintf("%s/%s/models/%s:%skey=%s", meta.BaseURL, version, meta.ActualModelName, action, meta.APIKey), nil
return fmt.Sprintf("%s/%s/models/%s:%s", meta.BaseURL, version, meta.ActualModelName, action), nil
}
func (a *Adaptor) SetupRequestHeader(c *gin.Context, req *http.Request, meta *meta.Meta) error {

View File

@ -22,25 +22,9 @@ import (
"golang.org/x/sync/errgroup"
)
// // ImagesEditsHandler just copy response body to client
// //
// // https://replicate.com/black-forest-labs/flux-fill-pro
// func ImagesEditsHandler(c *gin.Context, resp *http.Response) (*model.ErrorWithStatusCode, *model.Usage) {
// c.Writer.WriteHeader(resp.StatusCode)
// for k, v := range resp.Header {
// c.Writer.Header().Set(k, v[0])
// }
// if _, err := io.Copy(c.Writer, resp.Body); err != nil {
// return openai.ErrorWrapper(err, "copy_response_body_failed", http.StatusInternalServerError), nil
// }
// defer resp.Body.Close()
// return nil, nil
// }
var errNextLoop = errors.New("next_loop")
// ImageHandler handles the response from the image creation or remix request
func ImageHandler(c *gin.Context, resp *http.Response) (
*model.ErrorWithStatusCode, *model.Usage) {
if resp.StatusCode != http.StatusCreated {

View File

@ -139,7 +139,7 @@ const TokensTable = () => {
<div>
<Popover
content={
'laisky-' + record.key
'sk-' + record.key
}
style={{ padding: 20 }}
position="top"
@ -148,7 +148,7 @@ const TokensTable = () => {
</Popover>
<Button theme="light" type="secondary" style={{ marginRight: 1 }}
onClick={async (text) => {
await copyText('laisky-' + record.key);
await copyText('sk-' + record.key);
}}
>复制</Button>
<SplitButtonGroup style={{ marginRight: 1 }} aria-label="项目操作按钮组">
@ -329,24 +329,24 @@ const TokensTable = () => {
let nextUrl;
if (nextLink) {
nextUrl = nextLink + `/#/?settings={"key":"laisky-${key}","url":"${serverAddress}"}`;
nextUrl = nextLink + `/#/?settings={"key":"sk-${key}","url":"${serverAddress}"}`;
} else {
nextUrl = `https://app.nextchat.dev/#/?settings={"key":"laisky-${key}","url":"${serverAddress}"}`;
nextUrl = `https://app.nextchat.dev/#/?settings={"key":"sk-${key}","url":"${serverAddress}"}`;
}
let url;
switch (type) {
case 'ama':
url = mjLink + `/#/?settings={"key":"laisky-${key}","url":"${serverAddress}"}`;
url = mjLink + `/#/?settings={"key":"sk-${key}","url":"${serverAddress}"}`;
break;
case 'opencat':
url = `opencat://team/join?domain=${encodedServerAddress}&token=laisky-${key}`;
url = `opencat://team/join?domain=${encodedServerAddress}&token=sk-${key}`;
break;
case 'next':
url = nextUrl;
break;
default:
url = `laisky-${key}`;
url = `sk-${key}`;
}
// if (await copy(url)) {
// showSuccess('已复制到剪贴板!');
@ -381,18 +381,18 @@ const TokensTable = () => {
let defaultUrl;
if (chatLink) {
defaultUrl = chatLink + `/#/?settings={"key":"laisky-${key}","url":"${serverAddress}"}`;
defaultUrl = chatLink + `/#/?settings={"key":"sk-${key}","url":"${serverAddress}"}`;
}
let url;
switch (type) {
case 'ama':
url = `ama://set-api-key?server=${encodedServerAddress}&key=laisky-${key}`;
url = `ama://set-api-key?server=${encodedServerAddress}&key=sk-${key}`;
break;
case 'opencat':
url = `opencat://team/join?domain=${encodedServerAddress}&token=laisky-${key}`;
url = `opencat://team/join?domain=${encodedServerAddress}&token=sk-${key}`;
break;
case 'next-mj':
url = mjLink + `/#/?settings={"key":"laisky-${key}","url":"${serverAddress}"}`;
url = mjLink + `/#/?settings={"key":"sk-${key}","url":"${serverAddress}"}`;
break;
case 'lobechat':
url = chatLink + `/?settings={"keyVaults":{"openai":{"apiKey":"sk-${key}","baseURL":"${serverAddress}/v1"}}}`;
@ -609,7 +609,7 @@ const TokensTable = () => {
}
let keys = '';
for (let i = 0; i < selectedKeys.length; i++) {
keys += selectedKeys[i].name + ' laisky-' + selectedKeys[i].key + '\n';
keys += selectedKeys[i].name + ' sk-' + selectedKeys[i].key + '\n';
}
await copyText(keys);
}

View File

@ -95,7 +95,7 @@ export async function onLarkOAuthClicked(lark_client_id) {
const state = await getOAuthState();
if (!state) return;
let redirect_uri = `${window.location.origin}/oauth/lark`;
window.open(`https://open.feishu.cn/open-apis/authen/v1/index?redirect_uri=${redirect_uri}&app_id=${lark_client_id}&state=${state}`);
window.open(`https://accounts.feishu.cn/open-apis/authen/v1/authorize?redirect_uri=${redirect_uri}&client_id=${lark_client_id}&state=${state}`);
}
export async function onOidcClicked(auth_url, client_id, openInNewTab = false) {

View File

@ -28,7 +28,7 @@ const COPY_OPTIONS = [
{
key: 'next',
text: 'ChatGPT Next',
url: 'https://app.nextchat.dev/#/?settings={"key":"laisky-{key}","url":"{serverAddress}"}',
url: 'https://app.nextchat.dev/#/?settings={"key":"sk-{key}","url":"{serverAddress}"}',
encode: false
},
{ key: 'ama', text: 'BotGem', url: 'ama://set-api-key?server={serverAddress}&key=sk-{key}', encode: true },
@ -134,7 +134,7 @@ export default function TokensTableRow({ item, manageToken, handleOpenModal, set
let url = option.url;
if (option.key === 'next' && siteInfo?.chat_link) {
url = siteInfo.chat_link + `/#/?settings={"key":"laisky-{key}","url":"{serverAddress}"}`;
url = siteInfo.chat_link + `/#/?settings={"key":"sk-{key}","url":"{serverAddress}"}`;
}
const key = item.key;
@ -211,7 +211,7 @@ export default function TokensTableRow({ item, manageToken, handleOpenModal, set
<Button
color="primary"
onClick={() => {
copy(`laisky-${item.key}`);
copy(`sk-${item.key}`);
}}
>
复制

0
web/build.sh Normal file → Executable file
View File

View File

@ -99,27 +99,27 @@ const TokensTable = () => {
// let nextUrl;
// if (nextLink) {
// nextUrl = nextLink + `/#/?settings={"key":"laisky-${key}","url":"${serverAddress}"}`;
// nextUrl = nextLink + `/#/?settings={"key":"sk-${key}","url":"${serverAddress}"}`;
// } else {
// nextUrl = `https://app.nextchat.dev/#/?settings={"key":"laisky-${key}","url":"${serverAddress}"}`;
// nextUrl = `https://app.nextchat.dev/#/?settings={"key":"sk-${key}","url":"${serverAddress}"}`;
// }
let url;
switch (type) {
case 'ama':
url = `ama://set-api-key?server=${encodedServerAddress}&key=laisky-${key}`;
url = `ama://set-api-key?server=${encodedServerAddress}&key=sk-${key}`;
break;
case 'opencat':
url = `opencat://team/join?domain=${encodedServerAddress}&token=laisky-${key}`;
url = `opencat://team/join?domain=${encodedServerAddress}&token=sk-${key}`;
break;
case 'web':
url = `https://chat.laisky.com?apikey=laisky-${key}`;
url = `https://chat.laisky.com?apikey=sk-${key}`;
break;
case 'lobechat':
url = nextLink + `/?settings={"keyVaults":{"openai":{"apiKey":"sk-${key}","baseURL":"${serverAddress}/v1"}}}`;
break;
default:
url = `laisky-${key}`;
url = `sk-${key}`;
}
if (await copy(url)) {
showSuccess('已复制到剪贴板!');
@ -144,18 +144,18 @@ const TokensTable = () => {
let defaultUrl;
if (chatLink) {
defaultUrl = chatLink + `/#/?settings={"key":"laisky-${key}","url":"${serverAddress}"}`;
defaultUrl = chatLink + `/#/?settings={"key":"sk-${key}","url":"${serverAddress}"}`;
} else {
defaultUrl = `https://app.nextchat.dev/#/?settings={"key":"laisky-${key}","url":"${serverAddress}"}`;
defaultUrl = `https://app.nextchat.dev/#/?settings={"key":"sk-${key}","url":"${serverAddress}"}`;
}
let url;
switch (type) {
case 'ama':
url = `ama://set-api-key?server=${encodedServerAddress}&key=laisky-${key}`;
url = `ama://set-api-key?server=${encodedServerAddress}&key=sk-${key}`;
break;
case 'opencat':
url = `opencat://team/join?domain=${encodedServerAddress}&token=laisky-${key}`;
url = `opencat://team/join?domain=${encodedServerAddress}&token=sk-${key}`;
break;
case 'lobechat':