← GPT-AI-SLIDE
CODE · 0.9 KB

api/runtime.js

Workspace snapshot · 09/04 13:45

export const SERVICE_ID = "agent-gpt-ai-slide";
export function environment(env = process.env) {
  const values = { url: env.SUPABASE_URL, key: env.SUPABASE_ANON_KEY, token: env.AVS_LLM_RUNTIME_SERVICE_TOKEN };
  return { ...values, connected: Object.values(values).every(Boolean) };
}
export async function rpc(name, payload, env = process.env) {
  const runtime = environment(env);
  if (!runtime.connected) throw Object.assign(new Error("VPS GPT基盤が未接続です"), { status: 503 });
  const response = await fetch(`${runtime.url}/rest/v1/rpc/${name}`, { method: "POST", headers: { apikey: runtime.key, Authorization: `Bearer ${runtime.key}`, "Content-Type": "application/json" }, body: JSON.stringify(payload) });
  const data = await response.json().catch(() => null);
  if (!response.ok) throw Object.assign(new Error(data?.message || "生成基盤へ接続できませんでした"), { status: response.status });
  return data;
}