72 lines
2.2 KiB
TypeScript
72 lines
2.2 KiB
TypeScript
import type {
|
|
BigFishActionResponse,
|
|
BigFishSessionResponse,
|
|
BigFishSessionSnapshotResponse,
|
|
CreateBigFishSessionRequest,
|
|
ExecuteBigFishActionRequest,
|
|
SendBigFishMessageRequest,
|
|
} from '../../../packages/shared/src/contracts/bigFish';
|
|
import type { TextStreamOptions } from '../aiTypes';
|
|
import { createCreationAgentClient } from '../creation-agent';
|
|
|
|
const BIG_FISH_AGENT_API_BASE = '/api/runtime/big-fish/agent/sessions';
|
|
const bigFishAgentHttpClient = createCreationAgentClient<
|
|
CreateBigFishSessionRequest,
|
|
BigFishSessionResponse,
|
|
BigFishSessionResponse,
|
|
BigFishSessionSnapshotResponse,
|
|
SendBigFishMessageRequest,
|
|
BigFishSessionResponse,
|
|
ExecuteBigFishActionRequest,
|
|
BigFishActionResponse
|
|
>({
|
|
apiBase: BIG_FISH_AGENT_API_BASE,
|
|
messages: {
|
|
createSession: '创建大鱼吃小鱼共创会话失败',
|
|
getSession: '读取大鱼吃小鱼共创会话失败',
|
|
sendMessage: '发送大鱼吃小鱼共创消息失败',
|
|
streamIncomplete: '大鱼吃小鱼共创消息流式结果不完整',
|
|
executeAction: '执行大鱼吃小鱼共创操作失败',
|
|
},
|
|
});
|
|
|
|
export async function createBigFishCreationSession(
|
|
payload: CreateBigFishSessionRequest = {},
|
|
) {
|
|
return bigFishAgentHttpClient.createSession(payload);
|
|
}
|
|
|
|
export async function getBigFishCreationSession(sessionId: string) {
|
|
return bigFishAgentHttpClient.getSession(sessionId);
|
|
}
|
|
|
|
export async function sendBigFishCreationMessage(
|
|
sessionId: string,
|
|
payload: SendBigFishMessageRequest,
|
|
) {
|
|
return bigFishAgentHttpClient.sendMessage(sessionId, payload);
|
|
}
|
|
|
|
export async function streamBigFishCreationMessage(
|
|
sessionId: string,
|
|
payload: SendBigFishMessageRequest,
|
|
options: TextStreamOptions = {},
|
|
) {
|
|
return bigFishAgentHttpClient.streamMessage(sessionId, payload, options);
|
|
}
|
|
|
|
export async function executeBigFishCreationAction(
|
|
sessionId: string,
|
|
payload: ExecuteBigFishActionRequest,
|
|
) {
|
|
return bigFishAgentHttpClient.executeAction(sessionId, payload);
|
|
}
|
|
|
|
export const bigFishCreationClient = {
|
|
createSession: createBigFishCreationSession,
|
|
getSession: getBigFishCreationSession,
|
|
sendMessage: sendBigFishCreationMessage,
|
|
streamMessage: streamBigFishCreationMessage,
|
|
executeAction: executeBigFishCreationAction,
|
|
};
|