From 335e8eff1150db59634c768f0d9ac20a3e80e22d Mon Sep 17 00:00:00 2001 From: geoffsee <> Date: Tue, 27 May 2025 14:48:18 -0400 Subject: [PATCH] Refactor: Relocate SDK files to `lib` and update imports Moved all SDK files from the `sdk` directory to the `lib` directory to better align with project structure. Updated all associated import paths across the codebase to reflect this change. Removed unused or commented-out code in `SiteCoordinator.js` for better clarity and maintainability. --- .../site/durable_objects/SiteCoordinator.js | 18 ------------------ workers/site/{sdk => lib}/assistant-sdk.ts | 0 workers/site/{sdk => lib}/chat-sdk.ts | 0 workers/site/{sdk => lib}/handleStreamData.ts | 0 workers/site/{sdk => lib}/utils.ts | 0 workers/site/providers/cerebras.ts | 2 +- workers/site/providers/claude.ts | 2 +- workers/site/providers/cloudflareAi.ts | 2 +- workers/site/providers/fireworks.ts | 2 +- workers/site/providers/google.ts | 2 +- workers/site/providers/groq.ts | 2 +- workers/site/providers/openai.ts | 2 +- workers/site/providers/xai.ts | 2 +- workers/site/services/ChatService.ts | 4 ++-- 14 files changed, 10 insertions(+), 28 deletions(-) rename workers/site/{sdk => lib}/assistant-sdk.ts (100%) rename workers/site/{sdk => lib}/chat-sdk.ts (100%) rename workers/site/{sdk => lib}/handleStreamData.ts (100%) rename workers/site/{sdk => lib}/utils.ts (100%) diff --git a/workers/site/durable_objects/SiteCoordinator.js b/workers/site/durable_objects/SiteCoordinator.js index 6debe68..f1d8a4b 100644 --- a/workers/site/durable_objects/SiteCoordinator.js +++ b/workers/site/durable_objects/SiteCoordinator.js @@ -7,24 +7,10 @@ export default class SiteCoordinator extends DurableObject { this.env = env; } - // Public method to calculate dynamic max tokens async dynamicMaxTokens(input, maxOuputTokens) { return 2000; - // const baseTokenLimit = 1024; - // - // - // const { encode } = await import("gpt-tokenizer/esm/model/gpt-4o"); - // - // const inputTokens = Array.isArray(input) - // ? encode(input.map(i => i.content).join(' ')) - // : encode(input); - // - // const scalingFactor = inputTokens.length > 300 ? 1.5 : 1; - // - // return Math.min(baseTokenLimit + Math.floor(inputTokens.length * scalingFactor^2), maxOuputTokens); } - // Public method to retrieve conversation history async getConversationHistory(conversationId) { const history = await this.env.KV_STORAGE.get( `conversations:${conversationId}`, @@ -33,7 +19,6 @@ export default class SiteCoordinator extends DurableObject { return JSON.parse(history) || []; } - // Public method to save a message to the conversation history async saveConversationHistory(conversationId, message) { const history = await this.getConversationHistory(conversationId); history.push(message); @@ -52,7 +37,6 @@ export default class SiteCoordinator extends DurableObject { ); } - // New method to get stream data async getStreamData(streamId) { const streamEntry = await this.env.KV_STORAGE.get(`streams:${streamId}`); if (!streamEntry) { @@ -61,7 +45,6 @@ export default class SiteCoordinator extends DurableObject { const { data, expirationTimestamp } = JSON.parse(streamEntry); if (Date.now() > expirationTimestamp) { - // await this.state.storage.delete(streamId); // Clean up expired entry await this.deleteStreamData(`streams:${streamId}`); return null; } @@ -69,7 +52,6 @@ export default class SiteCoordinator extends DurableObject { return data; } - // New method to delete stream data (cleanup) async deleteStreamData(streamId) { await this.env.KV_STORAGE.delete(`streams:${streamId}`); } diff --git a/workers/site/sdk/assistant-sdk.ts b/workers/site/lib/assistant-sdk.ts similarity index 100% rename from workers/site/sdk/assistant-sdk.ts rename to workers/site/lib/assistant-sdk.ts diff --git a/workers/site/sdk/chat-sdk.ts b/workers/site/lib/chat-sdk.ts similarity index 100% rename from workers/site/sdk/chat-sdk.ts rename to workers/site/lib/chat-sdk.ts diff --git a/workers/site/sdk/handleStreamData.ts b/workers/site/lib/handleStreamData.ts similarity index 100% rename from workers/site/sdk/handleStreamData.ts rename to workers/site/lib/handleStreamData.ts diff --git a/workers/site/sdk/utils.ts b/workers/site/lib/utils.ts similarity index 100% rename from workers/site/sdk/utils.ts rename to workers/site/lib/utils.ts diff --git a/workers/site/providers/cerebras.ts b/workers/site/providers/cerebras.ts index 316bcb7..782c95a 100644 --- a/workers/site/providers/cerebras.ts +++ b/workers/site/providers/cerebras.ts @@ -6,7 +6,7 @@ import { ModelSnapshotType2, UnionStringArray, } from "mobx-state-tree"; -import ChatSdk from "../sdk/chat-sdk"; +import ChatSdk from "../lib/chat-sdk"; export class CerebrasSdk { static async handleCerebrasStream( diff --git a/workers/site/providers/claude.ts b/workers/site/providers/claude.ts index 14b9c96..1af06e0 100644 --- a/workers/site/providers/claude.ts +++ b/workers/site/providers/claude.ts @@ -7,7 +7,7 @@ import { ModelSnapshotType2, UnionStringArray, } from "mobx-state-tree"; -import ChatSdk from "../sdk/chat-sdk"; +import ChatSdk from "../lib/chat-sdk"; export class ClaudeChatSdk { private static async streamClaudeResponse( diff --git a/workers/site/providers/cloudflareAi.ts b/workers/site/providers/cloudflareAi.ts index 9bd8968..b19c8e2 100644 --- a/workers/site/providers/cloudflareAi.ts +++ b/workers/site/providers/cloudflareAi.ts @@ -6,7 +6,7 @@ import { ModelSnapshotType2, UnionStringArray, } from "mobx-state-tree"; -import ChatSdk from "../sdk/chat-sdk"; +import ChatSdk from "../lib/chat-sdk"; export class CloudflareAISdk { static async handleCloudflareAIStream( diff --git a/workers/site/providers/fireworks.ts b/workers/site/providers/fireworks.ts index 4d7e7d0..76a186f 100644 --- a/workers/site/providers/fireworks.ts +++ b/workers/site/providers/fireworks.ts @@ -9,7 +9,7 @@ import { UnionStringArray, } from "mobx-state-tree"; import Message from "../models/Message"; -import ChatSdk from "../sdk/chat-sdk"; +import ChatSdk from "../lib/chat-sdk"; export class FireworksAiChatSdk { private static async streamFireworksResponse( diff --git a/workers/site/providers/google.ts b/workers/site/providers/google.ts index 808f29e..b7c3c98 100644 --- a/workers/site/providers/google.ts +++ b/workers/site/providers/google.ts @@ -1,5 +1,5 @@ import { OpenAI } from "openai"; -import ChatSdk from "../sdk/chat-sdk"; +import ChatSdk from "../lib/chat-sdk"; import { StreamParams } from "../services/ChatService"; export class GoogleChatSdk { diff --git a/workers/site/providers/groq.ts b/workers/site/providers/groq.ts index 6c66043..28b2daa 100644 --- a/workers/site/providers/groq.ts +++ b/workers/site/providers/groq.ts @@ -6,7 +6,7 @@ import { ModelSnapshotType2, UnionStringArray, } from "mobx-state-tree"; -import ChatSdk from "../sdk/chat-sdk"; +import ChatSdk from "../lib/chat-sdk"; export class GroqChatSdk { static async handleGroqStream( diff --git a/workers/site/providers/openai.ts b/workers/site/providers/openai.ts index 612cb3e..38a5342 100644 --- a/workers/site/providers/openai.ts +++ b/workers/site/providers/openai.ts @@ -1,5 +1,5 @@ import { OpenAI } from "openai"; -import ChatSdk from "../sdk/chat-sdk"; +import ChatSdk from "../lib/chat-sdk"; export class OpenAiChatSdk { static async handleOpenAiStream( diff --git a/workers/site/providers/xai.ts b/workers/site/providers/xai.ts index d2ffc10..8029377 100644 --- a/workers/site/providers/xai.ts +++ b/workers/site/providers/xai.ts @@ -1,5 +1,5 @@ import { OpenAI } from "openai"; -import ChatSdk from "../sdk/chat-sdk"; +import ChatSdk from "../lib/chat-sdk"; export class XaiChatSdk { static async handleXaiStream( diff --git a/workers/site/services/ChatService.ts b/workers/site/services/ChatService.ts index 621f112..8bc7a8e 100644 --- a/workers/site/services/ChatService.ts +++ b/workers/site/services/ChatService.ts @@ -1,6 +1,6 @@ import {flow, getSnapshot, types} from 'mobx-state-tree'; import OpenAI from 'openai'; -import ChatSdk from '../sdk/chat-sdk'; +import ChatSdk from '../lib/chat-sdk'; import Message from "../models/Message"; import O1Message from "../models/O1Message"; import {getModelFamily, ModelFamily} from "../../../src/components/chat/lib/SupportedModels"; @@ -8,7 +8,7 @@ import {OpenAiChatSdk} from "../providers/openai"; import {GroqChatSdk} from "../providers/groq"; import {ClaudeChatSdk} from "../providers/claude"; import {FireworksAiChatSdk} from "../providers/fireworks"; -import handleStreamData from "../sdk/handleStreamData"; +import handleStreamData from "../lib/handleStreamData"; import {GoogleChatSdk} from "../providers/google"; import {XaiChatSdk} from "../providers/xai"; import {CerebrasSdk} from "../providers/cerebras";