feat: Add OpenAI-compatible provider nodes

- Support multiple OpenAI-compatible providers with custom prefix/baseUrl
- Add provider nodes CRUD (create/read/update/delete)
- URL building: baseUrl + /chat/completions or /responses
- Model import from /models endpoint
- API key validation via /models
- Usage type safety across all translators
- OAuth token auto-refresh for expired tokens
This commit is contained in:
decolua committed 2026-02-02 19:45:12 +07:00
1 parent 1b14c9d66b
commit 0a28f9f924
25 files changed
+1276 -151

No files matched your search

@@ -181,9 +181,9 @@ export function geminiToOpenAIResponse(chunk, state) {
state.finishReason = finishReason;
}
// Usage metadata
// Usage metadata
const usage = response.usageMetadata || chunk.usageMetadata;
if (usage) {
if (usage && typeof usage === 'object') {
const promptTokens = (usage.promptTokenCount || 0) + (usage.thoughtsTokenCount || 0);
state.usage = {
prompt_tokens: promptTokens,