Browse Source

feat: support systemPrompt in session create and config APIs

Co-authored-by: CodeFree <codefree@chinatelcom.cn>
feat/agent-independence
npmrun 2 months ago
parent
commit
97091cf4b3
  1. 16
      server/api/agents/[agentSlug]/sessions/[id]/config.put.ts
  2. 7
      server/api/agents/[agentSlug]/sessions/index.post.ts

16
server/api/agents/[agentSlug]/sessions/[id]/config.put.ts

@ -27,16 +27,28 @@ export default defineWrappedResponseHandler(async (event) => {
}
const body = await readBody(event);
const { modelId, enableThinking, enableTools } = body as {
const { modelId, enableThinking, enableTools, systemPrompt } = body as {
modelId?: number;
enableThinking?: number;
enableTools?: number;
systemPrompt?: string | null;
};
const updates: { modelId?: number | null; enableThinking?: number | null; enableTools?: number | null } = {};
const updates: {
modelId?: number | null;
enableThinking?: number | null;
enableTools?: number | null;
systemPrompt?: string | null;
} = {};
if (modelId !== undefined) updates.modelId = modelId;
if (enableThinking !== undefined) updates.enableThinking = enableThinking ? 1 : 0;
if (enableTools !== undefined) updates.enableTools = enableTools ? 1 : 0;
if (systemPrompt !== undefined) {
if (systemPrompt !== null && typeof systemPrompt === "string" && systemPrompt.length > 5000) {
return R.error("系统提示词不能超过5000字符", null);
}
updates.systemPrompt = systemPrompt;
}
if (Object.keys(updates).length === 0) {
return R.error("无更新内容", null);

7
server/api/agents/[agentSlug]/sessions/index.post.ts

@ -44,6 +44,12 @@ export default defineWrappedResponseHandler(async (event) => {
modelId = agent.defaultModelId;
}
const body = await readBody(event).catch(() => ({}));
const systemPrompt: string | null =
typeof body?.systemPrompt === "string" && body.systemPrompt.trim().length > 0
? body.systemPrompt.slice(0, 5000)
: null;
const session = await createSession({
userId: identity.userId,
tempToken,
@ -51,6 +57,7 @@ export default defineWrappedResponseHandler(async (event) => {
modelId,
enableThinking: agent.enableThinking,
enableTools: agent.enableTools,
systemPrompt,
expiresAt,
});

Loading…
Cancel
Save