Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/123hi123/qwen2api-rs
/ functions
Functions
435 in github.com/123hi123/qwen2api-rs
⨍
Functions
435
◇
Types & classes
54
↓ 280 callers
Function
el
简易 DOM 工厂:el('div', {class:'x'}, ['hi'])
web/app.js:103
↓ 201 callers
Method
get
(&self, file_id: &str)
src/context/file_store.rs:54
↓ 90 callers
Method
as_str
(&self)
src/media.rs:29
↓ 77 callers
Method
into_response
(self)
src/error.rs:56
↓ 32 callers
Function
toast
toast 通知:type = success | error | info
web/app.js:59
↓ 26 callers
Method
get
取得資料副本。
src/db.rs:69
↓ 25 callers
Function
escapeHtml
HTML 转义,避免注入
web/app.js:74
↓ 24 callers
Function
env_or
(key: &str, default: T)
src/config.rs:9
↓ 22 callers
Function
now_secs
Unix epoch 秒(浮點,對齊 Python time.time())。
src/util.rs:20
↓ 20 callers
Function
api
* fetch 封装(JSON)。返回 { ok, status, data }。 * 自动带 auth 头;body 为对象时自动序列化并加 Content-Type。
web/app.js:36
↓ 20 callers
Method
load
(settings: &Settings)
src/account/pool.rs:179
↓ 17 callers
Function
account_pos
取帳號在 Vec 的位置:index 開啟用 pos 表 O(1);否則線性掃描(舊行為)。
src/account/pool.rs:134
↓ 17 callers
Function
fmtInt
千分位整数
web/app.js:436
↓ 15 callers
Function
p
(x)
web/app.js:450
↓ 13 callers
Function
fmtMs
毫秒 → 友好耗时(<1s 显示 ms,否则 s)
web/app.js:441
↓ 12 callers
Method
get
(&self, id: i64)
src/media.rs:357
↓ 12 callers
Function
setConn
更新侧边栏连接状态指示灯
web/app.js:133
↓ 12 callers
Function
sse_event
SSE event 行(Anthropic 用 event: + data:)。
src/execution/presenter.rs:9
↓ 11 callers
Function
chunk_of
(payload: serde_json::Value)
src/upstream/sse.rs:198
↓ 11 callers
Function
loadingNode
()
web/app.js:1778
↓ 10 callers
Function
loadAccounts
()
web/app.js:781
↓ 10 callers
Function
parse_tool_calls
從模型輸出文字解析 tool call。registry 用於還原名稱。 支援:`<tool_call>{json}</tool_call>`、`<tool_call>{json1}{json2}…</tool_call>`、 `<tool_call>{json1}\n{json2}</tool_c
src/toolcall/mod.rs:240
↓ 10 callers
Method
remove
(&self, email: &str)
src/account/pool.rs:304
↓ 10 callers
Function
resolve_auth
完整認證:取 token → 驗證 → 配額。對應 resolve_auth_context。
src/auth.rs:65
↓ 10 callers
Method
update
在鎖內就地修改並持久化(避免讀-改-寫競態)。
src/db.rs:83
↓ 9 callers
Method
acquire_locked
內部:依設定派發到索引版或掃描版;並在 min_interval 世代變更時惰性整建索引。
src/account/pool.rs:371
↓ 9 callers
Method
apply_verify
套用驗證結果(管理台單獨/全量驗證用)。
src/account/pool.rs:758
↓ 9 callers
Function
now_unix
Unix epoch 秒(整數)。
src/util.rs:28
↓ 9 callers
Function
open_conn
(path: &Path)
src/media.rs:269
↓ 9 callers
Function
test_pool
(accounts: Vec<Account>, use_index: bool, min_ms: u64, cap: i64)
src/account/pool.rs:815
↓ 8 callers
Function
bash_registry
()
src/toolcall/mod.rs:415
↓ 8 callers
Method
count
(&self)
src/account/pool.rs:226
↓ 8 callers
Function
extract_text_content
從訊息 content 抽出純文字(string 或 parts 陣列)。
src/request/prompt_builder.rs:18
↓ 8 callers
Function
now_millis
Unix epoch 毫秒。
src/util.rs:33
↓ 8 callers
Function
registry_for
共用:取得某請求的工具註冊表。
src/execution/mod.rs:418
↓ 8 callers
Function
spawn_db
在 blocking 執行緒池跑同步 DB 操作;JoinError/SQL error 皆回 None 並記 log。
src/media.rs:514
↓ 8 callers
Method
status
儀表板狀態快照。
src/account/pool.rs:672
↓ 7 callers
Function
norm_key
標準化鍵(小寫、去非英數),用於反向匹配。
src/toolcall/obfuscation.rs:32
↓ 7 callers
Method
on_event
將一個 OutEvent 轉成 0..N 個 SSE 字串。
src/execution/translator.rs:41
↓ 7 callers
Function
parse_chunk_payload
把 translator 產生的 `"data: <json>\n\n"` 字串還原成 Value,方便斷言。
src/execution/translator.rs:128
↓ 7 callers
Method
persist
(&self, accounts: &[Account])
src/account/pool.rs:273
↓ 7 callers
Function
reindex_email
某帳號欄位變動後,於同臨界區內重新放置(index 關閉時為 no-op)。
src/account/pool.rs:119
↓ 7 callers
Function
set
(id, val)
web/app.js:1723
↓ 7 callers
Function
viewEl
取得视图容器并清空
web/app.js:126
↓ 6 callers
Function
elTable
用表头数组 + 已生成的 tbody HTML 构造表格(含横向滚动包裹)
web/app.js:1783
↓ 6 callers
Method
is_available
(&self, min_interval_ms: u64)
src/account/account.rs:97
↓ 6 callers
Method
mark_invalid
標記失效。 設計(修正 13 個 auth_error 帳號的根因): - `err` 寫入 `last_error`(先前只設 status_code,導致管理台看不到具體原因)。 - `reason == "auth_error"` 加連續失敗門檻:未達 threshold 時保留 `vali
src/account/pool.rs:621
↓ 6 callers
Function
rebuild_index
整建索引(O(n),僅 load / add / remove / set_max_inflight / min_interval 變更時觸發)。
src/account/pool.rs:102
↓ 6 callers
Function
stat
(label, n, color)
web/app.js:268
↓ 6 callers
Function
updateBubble
更新 assistant 气泡(流式时频繁调用)
web/app.js:1297
↓ 5 callers
Method
close_block
(&mut self, out: &mut Vec<String>)
src/execution/presenter.rs:63
↓ 5 callers
Function
collect_completion
( state: AppState, std: StandardRequest, registry: HashMap<String, String>, )
src/execution/mod.rs:388
↓ 5 callers
Function
env_str
(key: &str, default: &str)
src/config.rs:13
↓ 5 callers
Function
ge
(obj: Option<&'a Value>, key: &str)
src/upstream/sse.rs:34
↓ 5 callers
Function
hmac
(key: &[u8], msg: &[u8])
src/context/oss.rs:30
↓ 5 callers
Method
list
列出所有帳號(管理台用,clone 快照)。
src/account/pool.rs:320
↓ 5 callers
Method
next_available_at
下一次可用時間(風控強制休息):限流到期、上次「起始」、上次「結束」各 + 最小間隔,取最大。 從結束起算可確保長請求(如出圖 30s)完成後仍有完整休息。
src/account/account.rs:103
↓ 5 callers
Method
parse
(s: &str)
src/media.rs:47
↓ 5 callers
Function
registry_with
(tools: &[(&str, &str)])
src/toolcall/mod.rs:522
↓ 5 callers
Method
replace_token
用新 token 覆寫帳號並 reset 為健康狀態。 用於 refresh 流程:admin endpoint / 背景 worker 跑完 signin 後寫回新 JWT。 一律清 last_error、failures=0、status="valid"——既有 hot-path 的「3 次門檻
src/account/pool.rs:732
↓ 5 callers
Method
req
(&self, method: reqwest::Method, url: String, token: &str)
src/upstream/client.rs:83
↓ 5 callers
Function
saveSettings
(body, okMsg)
web/app.js:1735
↓ 4 callers
Function
add_used_tokens
增加 user 已用 token(依 token 匹配 user.id)。
src/auth.rs:119
↓ 4 callers
Method
client
取得目前 client 的複本(reqwest::Client 內部為 Arc,clone 便宜)。
src/upstream/client.rs:79
↓ 4 callers
Function
delete
( State(state): State<AppState>, headers: HeaderMap, Query(query): Query<HashMap<String, String>>,
src/api/files.rs:79
↓ 4 callers
Function
fmtClock
毫秒时间戳 → 本地 HH:MM:SS
web/app.js:447
↓ 4 callers
Function
open_conn
開啟連線並套用 WAL / NORMAL / busy_timeout。
src/stats.rs:107
↓ 4 callers
Function
parse_sse_chunk
解析一個 SSE 訊息塊(可能含多行 data:)。回傳正規化 delta 列表。
src/upstream/sse.rs:71
↓ 4 callers
Method
place
依即時狀態把 email 放到對的位置。O(log n)(push;舊殘留 lazy 丟棄)。 呼叫前帳號欄位必須已是最新值(與欄位寫入同臨界區,避免 TOCTOU)。
src/account/pool.rs:86
↓ 4 callers
Method
signin
chat.qwen.ai 純 HTTP 重登(取代過期 / 即將過期的 token)。 端點:POST /api/v1/auths/signin,body `{email, password: sha256_hex(plain)}`。 校驗格式取自 OneDragon 註冊工具 `one_drag
src/upstream/client.rs:101
↓ 4 callers
Function
sse_response
建立 text/event-stream 回應。
src/api/openai.rs:77
↓ 4 callers
Method
start
啟動背景補滿迴圈(bootstrap + GC)。
src/upstream/chat_id_pool.rs:192
↓ 4 callers
Method
verify_token
驗證 token:GET /api/v1/auths/ → 200 且 role==user。
src/upstream/client.rs:149
↓ 4 callers
Function
xAt
(i)
web/app.js:585
↓ 3 callers
Method
any_valid_token
取得任一可用帳號的 token(用於抓模型列表等)。
src/account/pool.rs:353
↓ 3 callers
Function
apply_thinking
(fc: &mut serde_json::Map<String, Value>, enabled: bool)
src/upstream/payload.rs:28
↓ 3 callers
Function
authHeaders
共用认证头:所有请求带 Bearer
web/app.js:25
↓ 3 callers
Function
build_openai_request
OpenAI Chat Completions / 通用 chat 的標準請求。
src/request/mod.rs:155
↓ 3 callers
Method
chunk
(&self, delta: Value, finish_reason: Option<&str>)
src/execution/translator.rs:25
↓ 3 callers
Function
coerce_bool
(v: Option<&Value>)
src/request/mod.rs:31
↓ 3 callers
Method
delete_chat
刪除會話 DELETE /api/v2/chats/{chat_id}(200/204/404 視為成功)。
src/upstream/client.rs:259
↓ 3 callers
Function
generate_with_retry
帶重試的單次生成:迴圈呼叫 collect_completion,命中 URL 即回。 智慧跳過**(僅影片 t2v): - 起始 exclude = 持久化的 no_t2v 集合 ∪ session 內已驗證無權限的帳號。 - 若某次「成功但無 URL」且有 used_email → 該帳號無
src/media.rs:108
↓ 3 callers
Method
get_status_code
動態狀態碼(對齊 Python get_status_code)。
src/account/account.rs:111
↓ 3 callers
Function
jitter_ms
抖動毫秒(用於帳號最小間隔/限流冷卻)。
src/util.rs:82
↓ 3 callers
Function
loadSettings
()
web/app.js:1718
↓ 3 callers
Function
parse_model_mode
(model: &str)
src/request/model_modes.rs:28
↓ 3 callers
Function
parse_obj
(v: &Value, registry: &HashMap<String, String>)
src/toolcall/mod.rs:319
↓ 3 callers
Function
poll
()
web/app.js:224
↓ 3 callers
Function
refresh
()
web/app.js:1482
↓ 3 callers
Function
renderChat
()
web/app.js:1110
↓ 3 callers
Method
resolve_model
解析模型別名。映射命中則用映射值;否則若不是 qwen 系模型,回退到預設模型, 以避免把下游(claude-/gpt-/gemini-)模型名原樣丟給上游導致 "Model not found"。
src/state.rs:132
↓ 3 callers
Function
scan_json_object_end
從某個 `{` 位置(byte index)出發,做 brace-balanced 掃描,回傳該 JSON 物件 結束位置(含末尾 `}`)的 byte index。會正確處理字串字面值中的 `{`/`}`/`\"`/反斜線跳脫。 若到字串尾仍未配對成功,回 None(呼叫端視為「不完整 JSON」
src/toolcall/mod.rs:119
↓ 3 callers
Method
set
以新值整體覆蓋並持久化。
src/db.rs:74
↓ 3 callers
Method
status
(&self)
src/error.rs:29
↓ 3 callers
Function
variant
(base: &str, suffix: &str, mode: &str, created: i64, caps: &Value, family: &str)
src/request/model_catalog.rs:72
↓ 2 callers
Method
add
新增 / 覆蓋帳號(依 email 去重),觸發保存。
src/account/pool.rs:283
↓ 2 callers
Method
backup_urls
下載一批 URL 到本地,回傳 results JSON 陣列(cdn_url/filename/local_url)。
src/media.rs:425
↓ 2 callers
Function
build_http
依出口代理建立 reqwest client。proxy 為 None/空 → 不顯式設代理(reqwest 仍會讀 HTTP(S)_PROXY env)。
src/upstream/client.rs:23
↓ 2 callers
Method
cmp
(&self, other: &Self)
src/account/pool.rs:45
↓ 2 callers
Function
copyText
复制到剪贴板(带降级方案)
web/app.js:82
next →
1–100 of 435, ranked by callers