@baishuyun/agents 0.0.2 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/CHANGELOG.md +25 -13
  2. package/index.ts +10 -10
  3. package/package.json +3 -3
  4. package/src/continue-confirmer/index.ts +41 -41
  5. package/src/continue-confirmer/prompt.ts +11 -11
  6. package/src/fields-builder/fields-builder.ts +43 -43
  7. package/src/fields-builder/index.ts +109 -109
  8. package/src/form-builder/consts/index.ts +5 -5
  9. package/src/form-builder/index.ts +24 -24
  10. package/src/form-builder/model/ds.ts +8 -8
  11. package/src/form-builder/model/openai.ts +7 -7
  12. package/src/form-builder/model/v0.ts +7 -7
  13. package/src/form-builder/model/xai.ts +7 -7
  14. package/src/form-builder/prompts/fields-design-docs.ts +3 -3
  15. package/src/form-builder/prompts/index.ts +32 -32
  16. package/src/form-builder/schema/index.ts +7 -7
  17. package/src/form-builder/tools/address.ts +58 -58
  18. package/src/form-builder/tools/attachment.ts +62 -62
  19. package/src/form-builder/tools/button.ts +73 -73
  20. package/src/form-builder/tools/checkbox.ts +55 -55
  21. package/src/form-builder/tools/confirm-to-create-fields-for-related-form.ts +16 -16
  22. package/src/form-builder/tools/confirm-to-create-form.ts +11 -11
  23. package/src/form-builder/tools/confirm-to-create-related-form.ts +16 -16
  24. package/src/form-builder/tools/confirm-to-save-checked-fields.ts +11 -11
  25. package/src/form-builder/tools/date-time.ts +73 -73
  26. package/src/form-builder/tools/department-group.ts +49 -49
  27. package/src/form-builder/tools/department.ts +49 -49
  28. package/src/form-builder/tools/image.ts +123 -123
  29. package/src/form-builder/tools/index.ts +27 -27
  30. package/src/form-builder/tools/input.ts +70 -70
  31. package/src/form-builder/tools/link-data.ts +70 -70
  32. package/src/form-builder/tools/load-data.ts +49 -49
  33. package/src/form-builder/tools/location.ts +94 -94
  34. package/src/form-builder/tools/member-group.ts +51 -51
  35. package/src/form-builder/tools/member.ts +51 -51
  36. package/src/form-builder/tools/number-input.ts +106 -106
  37. package/src/form-builder/tools/prompt-to-create-realted-form.ts +12 -12
  38. package/src/form-builder/tools/radio.ts +54 -54
  39. package/src/form-builder/tools/select-checker.ts +58 -58
  40. package/src/form-builder/tools/select.ts +56 -56
  41. package/src/form-builder/tools/serial-number.ts +75 -75
  42. package/src/form-builder/tools/signature.ts +38 -38
  43. package/src/form-builder/tools/splitline.ts +41 -41
  44. package/src/form-builder/tools/textarea.ts +55 -55
  45. package/src/form-builder/types/index.ts +53 -53
  46. package/src/form-builder/utils/index.ts +5 -5
  47. package/src/form-builder/utils/process-confirm-tool-call.ts +123 -123
  48. package/src/form-designer/index.ts +61 -61
  49. package/src/form-designer/prompts.ts +50 -50
  50. package/src/utils/index.ts +104 -104
  51. package/tsconfig.json +7 -7
package/CHANGELOG.md CHANGED
@@ -1,13 +1,25 @@
1
- # @baishuyun/agents
2
-
3
- ## 0.0.2
4
-
5
- ### Patch Changes
6
-
7
- - test pub
8
-
9
- ## 0.0.1
10
-
11
- ### Patch Changes
12
-
13
- - test init publish
1
+ # @baishuyun/agents
2
+
3
+ ## 0.0.4
4
+
5
+ ### Patch Changes
6
+
7
+ - test publish
8
+
9
+ ## 0.0.3
10
+
11
+ ### Patch Changes
12
+
13
+ - tes publish
14
+
15
+ ## 0.0.2
16
+
17
+ ### Patch Changes
18
+
19
+ - test pub
20
+
21
+ ## 0.0.1
22
+
23
+ ### Patch Changes
24
+
25
+ - test init publish
package/index.ts CHANGED
@@ -1,10 +1,10 @@
1
- export * from "./src/form-builder/index.js";
2
- export * from "./src/form-builder/consts/index.js";
3
- export * from "./src/form-builder/utils/index.js";
4
- export * from "./src/form-builder/types/index.js";
5
- export * from "./src/form-builder/prompts/index.js";
6
- export * from "./src/form-builder/model/ds.js";
7
-
8
- export * from "./src/form-designer/index.js";
9
- export * from "./src/fields-builder/index.js";
10
- export * from "./src/continue-confirmer/index.js";
1
+ export * from "./src/form-builder/index.js";
2
+ export * from "./src/form-builder/consts/index.js";
3
+ export * from "./src/form-builder/utils/index.js";
4
+ export * from "./src/form-builder/types/index.js";
5
+ export * from "./src/form-builder/prompts/index.js";
6
+ export * from "./src/form-builder/model/ds.js";
7
+
8
+ export * from "./src/form-designer/index.js";
9
+ export * from "./src/fields-builder/index.js";
10
+ export * from "./src/continue-confirmer/index.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@baishuyun/agents",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
4
  "description": "",
5
5
  "main": "index.ts",
6
6
  "type": "module",
@@ -21,8 +21,8 @@
21
21
  "devDependencies": {
22
22
  "@types/node": "^20.11.17",
23
23
  "typescript": "^5.9.3",
24
- "@baishuyun/types": "1.0.2",
25
- "@baishuyun/typescript-config": "0.0.2"
24
+ "@baishuyun/types": "1.0.4",
25
+ "@baishuyun/typescript-config": "0.0.4"
26
26
  },
27
27
  "scripts": {
28
28
  "test": "echo \"Error: no test specified\" && exit 1"
@@ -1,41 +1,41 @@
1
- import { Experimental_Agent as Agent, type StopCondition } from "ai";
2
-
3
- import { CONTINUE_CONFIRMER_PROMPT } from "./prompt.js";
4
- import { ds } from "../form-builder/model/ds.js";
5
- import {
6
- confirmToCreateRelatedForm,
7
- confirmToCreateFieldsForRelatedForm,
8
- } from "../form-builder/tools/index.js";
9
-
10
- import { promptToCreateRelatedForm } from "../form-builder/tools/prompt-to-create-realted-form.js";
11
-
12
- const tools = {
13
- promptToCreateRelatedForm,
14
- confirmToCreateFieldsForRelatedForm,
15
- confirmToCreateRelatedForm,
16
- };
17
-
18
- const done: StopCondition<typeof tools> = ({ steps }) => {
19
- return steps.some((step) =>
20
- step.content.some(
21
- (part) =>
22
- // 确认创建关联表字段,结束
23
- (part.type === "tool-result" &&
24
- part.toolName === "confirmToCreateFieldsForRelatedForm") ||
25
- // 没有关联表,结束
26
- (part.type === "tool-result" &&
27
- !part.output &&
28
- part.toolName === "promptToCreateRelatedForm"),
29
- ),
30
- );
31
- };
32
-
33
- export type ContinueTools = typeof tools;
34
-
35
- export const continueAgent = new Agent({
36
- system: CONTINUE_CONFIRMER_PROMPT,
37
- model: ds,
38
- tools,
39
- toolChoice: "required",
40
- stopWhen: done,
41
- });
1
+ import { Experimental_Agent as Agent, type StopCondition } from "ai";
2
+
3
+ import { CONTINUE_CONFIRMER_PROMPT } from "./prompt.js";
4
+ import { ds } from "../form-builder/model/ds.js";
5
+ import {
6
+ confirmToCreateRelatedForm,
7
+ confirmToCreateFieldsForRelatedForm,
8
+ } from "../form-builder/tools/index.js";
9
+
10
+ import { promptToCreateRelatedForm } from "../form-builder/tools/prompt-to-create-realted-form.js";
11
+
12
+ const tools = {
13
+ promptToCreateRelatedForm,
14
+ confirmToCreateFieldsForRelatedForm,
15
+ confirmToCreateRelatedForm,
16
+ };
17
+
18
+ const done: StopCondition<typeof tools> = ({ steps }) => {
19
+ return steps.some((step) =>
20
+ step.content.some(
21
+ (part) =>
22
+ // 确认创建关联表字段,结束
23
+ (part.type === "tool-result" &&
24
+ part.toolName === "confirmToCreateFieldsForRelatedForm") ||
25
+ // 没有关联表,结束
26
+ (part.type === "tool-result" &&
27
+ !part.output &&
28
+ part.toolName === "promptToCreateRelatedForm"),
29
+ ),
30
+ );
31
+ };
32
+
33
+ export type ContinueTools = typeof tools;
34
+
35
+ export const continueAgent = new Agent({
36
+ system: CONTINUE_CONFIRMER_PROMPT,
37
+ model: ds,
38
+ tools,
39
+ toolChoice: "required",
40
+ stopWhen: done,
41
+ });
@@ -1,11 +1,11 @@
1
- export const CONTINUE_CONFIRMER_PROMPT = `
2
- 你是表单构建提示员,根据上下文信息,判断是否需要创建关联表单。
3
-
4
- 步骤:
5
- 1. 如果需要创建关联表单,询问用户是否继续创建关联表单并调用 confirmToCreateRelatedForm 工具请求确认。
6
- 2. 如果用户确认继续创建关联表单,严格使用上下文识别到的关联表调用 confirmToCreateFieldsForRelatedForm 工具,让用户确认关联表来生成字段。
7
- 3. 如果上下文信息中没有明确的关联表创建需求,不要主动提及关联表创建。直接提示表单创建已完成。
8
-
9
- 要求:
10
- - 不要任何总结,确保简洁,只询问用户是否继续创建关联表单。
11
- `;
1
+ export const CONTINUE_CONFIRMER_PROMPT = `
2
+ 你是表单构建提示员,根据上下文信息,判断是否需要创建关联表单。
3
+
4
+ 步骤:
5
+ 1. 如果需要创建关联表单,询问用户是否继续创建关联表单并调用 confirmToCreateRelatedForm 工具请求确认。
6
+ 2. 如果用户确认继续创建关联表单,严格使用上下文识别到的关联表调用 confirmToCreateFieldsForRelatedForm 工具,让用户确认关联表来生成字段。
7
+ 3. 如果上下文信息中没有明确的关联表创建需求,不要主动提及关联表创建。直接提示表单创建已完成。
8
+
9
+ 要求:
10
+ - 不要任何总结,确保简洁,只询问用户是否继续创建关联表单。
11
+ `;
@@ -1,43 +1,43 @@
1
- export const fieldsBuilderPrompt = `
2
- 你是表单字段构建专家,根据上下文设计说明理解业务需求,完成表单字段构建,生成字段描述 json。
3
-
4
- 步骤:
5
- 1. 严格根据前文设计说明,理解业务需求
6
- 2. 根据需求,调用工具进行字段设计
7
- 3. 请求用户确认保存字段
8
-
9
- 输出:
10
- - 仅包含工具的结构化输出,不包含任何其他文字说明
11
- - 严格按设计说明的个数,严禁新增、遗漏字段
12
- - 设计中提到要关联其他表的字段,必须使用关联字段设计工具
13
-
14
- 注意:
15
- - 关联字段有最高优先级,如果上下文提到字段需要关联其他表,必须使用关联字段设计工具
16
- - 涉及到合同、记录相关等字段信息时,使用关联字段
17
- - 表单布局需要紧凑合理
18
- - 关联表单无需重复设计字段反向关联
19
- - 对于身份证号、手机号等字段,使用文本字段,并添加相应的正则表达式校验
20
- - 字段设计时,注意字段的必填项和选填项
21
- - 字段类型尽量使用多样化字段,避免单一字段类型
22
- - 请至少使用(buildLinkDataField)工具设计一个关联字段
23
- `;
24
-
25
- export const fieldsOnlyPrompt = `
26
- 你是表单字段构建专家,根据上下文设计说明理解业务需求,完成表单字段构建,生成字段描述 json。设计文档中字段设计完毕后,立即停止。
27
-
28
- 输出:
29
- - 仅包含工具的结构化输出,不包含任何其他文字说明
30
- - 严格按设计说明的个数,严禁新增、遗漏字段
31
- - 设计中提到要关联其他表的字段,必须使用关联字段设计工具
32
- -
33
-
34
- 注意:
35
- - 关联字段有最高优先级,如果上下文提到字段需要关联其他表,必须使用关联字段设计工具
36
- - 涉及到合同、记录相关等字段信息时,使用关联字段
37
- - 表单布局需要紧凑合理
38
- - 关联表单无需重复设计字段反向关联
39
- - 对于身份证号、手机号等字段,使用文本字段,并添加相应的正则表达式校验
40
- - 字段设计时,注意字段的必填项和选填项
41
- - 字段类型尽量使用多样化字段,避免单一字段类型
42
- - 请至少使用(buildLinkDataField)工具设计一个关联字段
43
- `;
1
+ export const fieldsBuilderPrompt = `
2
+ 你是表单字段构建专家,根据上下文设计说明理解业务需求,完成表单字段构建,生成字段描述 json。
3
+
4
+ 步骤:
5
+ 1. 严格根据前文设计说明,理解业务需求
6
+ 2. 根据需求,调用工具进行字段设计
7
+ 3. 请求用户确认保存字段
8
+
9
+ 输出:
10
+ - 仅包含工具的结构化输出,不包含任何其他文字说明
11
+ - 严格按设计说明的个数,严禁新增、遗漏字段
12
+ - 设计中提到要关联其他表的字段,必须使用关联字段设计工具
13
+
14
+ 注意:
15
+ - 关联字段有最高优先级,如果上下文提到字段需要关联其他表,必须使用关联字段设计工具
16
+ - 涉及到合同、记录相关等字段信息时,使用关联字段
17
+ - 表单布局需要紧凑合理
18
+ - 关联表单无需重复设计字段反向关联
19
+ - 对于身份证号、手机号等字段,使用文本字段,并添加相应的正则表达式校验
20
+ - 字段设计时,注意字段的必填项和选填项
21
+ - 字段类型尽量使用多样化字段,避免单一字段类型
22
+ - 请至少使用(buildLinkDataField)工具设计一个关联字段
23
+ `;
24
+
25
+ export const fieldsOnlyPrompt = `
26
+ 你是表单字段构建专家,根据上下文设计说明理解业务需求,完成表单字段构建,生成字段描述 json。设计文档中字段设计完毕后,立即停止。
27
+
28
+ 输出:
29
+ - 仅包含工具的结构化输出,不包含任何其他文字说明
30
+ - 严格按设计说明的个数,严禁新增、遗漏字段
31
+ - 设计中提到要关联其他表的字段,必须使用关联字段设计工具
32
+ -
33
+
34
+ 注意:
35
+ - 关联字段有最高优先级,如果上下文提到字段需要关联其他表,必须使用关联字段设计工具
36
+ - 涉及到合同、记录相关等字段信息时,使用关联字段
37
+ - 表单布局需要紧凑合理
38
+ - 关联表单无需重复设计字段反向关联
39
+ - 对于身份证号、手机号等字段,使用文本字段,并添加相应的正则表达式校验
40
+ - 字段设计时,注意字段的必填项和选填项
41
+ - 字段类型尽量使用多样化字段,避免单一字段类型
42
+ - 请至少使用(buildLinkDataField)工具设计一个关联字段
43
+ `;
@@ -1,109 +1,109 @@
1
- import { type InferUITools, type StopCondition, tool } from "ai";
2
- import { z } from "zod";
3
- import { fieldsOnlyPrompt } from "./fields-builder.js";
4
- import { ds } from "../form-builder/model/ds.js";
5
- import { fieldsTools } from "../form-builder/types/index.js";
6
- import { EnhancedAgent } from "../utils/index.js";
7
-
8
- export const stop = tool({
9
- name: "promptToStop",
10
- description:
11
- "stop when all fields have been built and no more fields are needed to be added.",
12
- inputSchema: z.object({
13
- hasRelatedForm: z.boolean(),
14
- }),
15
- outputSchema: z.boolean(),
16
- execute: (input) => {
17
- return input.hasRelatedForm;
18
- },
19
- });
20
-
21
- const tools = {
22
- ...fieldsTools,
23
- promptToStop: stop,
24
- };
25
-
26
- export type FieldsBuildTools = InferUITools<typeof tools>;
27
-
28
- const needConfirm: StopCondition<typeof tools> = ({ steps }) => {
29
- return steps.some((step) =>
30
- step.content.some(
31
- (part) => part.type === "tool-result" && part.toolName === "promptToStop",
32
- ),
33
- );
34
- };
35
-
36
- export type SaveCheckedFieldsPayload = {
37
- formName: string;
38
- relatedForms: Record<string, string>;
39
- };
40
-
41
- export const FieldsBuildWithConfirmAgent = new EnhancedAgent<
42
- SaveCheckedFieldsPayload,
43
- typeof tools
44
- >(
45
- {
46
- system: fieldsOnlyPrompt,
47
- model: ds,
48
- tools,
49
- toolChoice: "required",
50
- stopWhen: needConfirm,
51
- },
52
- {
53
- type: "data-confirm",
54
- data: {
55
- type: "tool-confirmToSaveCheckedFields",
56
- payload: {
57
- formName: "",
58
- relatedForms: {},
59
- },
60
- },
61
- },
62
- {
63
- relatedForms: {},
64
- },
65
- (ctx, body) => {
66
- console.log("ctx", ctx);
67
- return {
68
- formName: body.name,
69
- relatedForms: ctx.relatedForms,
70
- };
71
- },
72
- );
73
-
74
- export const createBuilder = () =>
75
- new EnhancedAgent<
76
- {
77
- formName: string;
78
- relatedForms: Record<string, string>;
79
- },
80
- typeof tools
81
- >(
82
- {
83
- system: fieldsOnlyPrompt,
84
- model: ds,
85
- tools,
86
- toolChoice: "required",
87
- stopWhen: needConfirm,
88
- },
89
- {
90
- type: "data-confirm",
91
- data: {
92
- type: "tool-confirmToSaveCheckedFields",
93
- payload: {
94
- formName: "",
95
- relatedForms: {},
96
- },
97
- },
98
- },
99
- {
100
- relatedForms: {},
101
- },
102
- (ctx, body) => {
103
- console.log("ctx", ctx);
104
- return {
105
- formName: body.name,
106
- relatedForms: ctx.relatedForms,
107
- };
108
- },
109
- );
1
+ import { type InferUITools, type StopCondition, tool } from "ai";
2
+ import { z } from "zod";
3
+ import { fieldsOnlyPrompt } from "./fields-builder.js";
4
+ import { ds } from "../form-builder/model/ds.js";
5
+ import { fieldsTools } from "../form-builder/types/index.js";
6
+ import { EnhancedAgent } from "../utils/index.js";
7
+
8
+ export const stop = tool({
9
+ name: "promptToStop",
10
+ description:
11
+ "stop when all fields have been built and no more fields are needed to be added.",
12
+ inputSchema: z.object({
13
+ hasRelatedForm: z.boolean(),
14
+ }),
15
+ outputSchema: z.boolean(),
16
+ execute: (input) => {
17
+ return input.hasRelatedForm;
18
+ },
19
+ });
20
+
21
+ const tools = {
22
+ ...fieldsTools,
23
+ promptToStop: stop,
24
+ };
25
+
26
+ export type FieldsBuildTools = InferUITools<typeof tools>;
27
+
28
+ const needConfirm: StopCondition<typeof tools> = ({ steps }) => {
29
+ return steps.some((step) =>
30
+ step.content.some(
31
+ (part) => part.type === "tool-result" && part.toolName === "promptToStop",
32
+ ),
33
+ );
34
+ };
35
+
36
+ export type SaveCheckedFieldsPayload = {
37
+ formName: string;
38
+ relatedForms: Record<string, string>;
39
+ };
40
+
41
+ export const FieldsBuildWithConfirmAgent = new EnhancedAgent<
42
+ SaveCheckedFieldsPayload,
43
+ typeof tools
44
+ >(
45
+ {
46
+ system: fieldsOnlyPrompt,
47
+ model: ds,
48
+ tools,
49
+ toolChoice: "required",
50
+ stopWhen: needConfirm,
51
+ },
52
+ {
53
+ type: "data-confirm",
54
+ data: {
55
+ type: "tool-confirmToSaveCheckedFields",
56
+ payload: {
57
+ formName: "",
58
+ relatedForms: {},
59
+ },
60
+ },
61
+ },
62
+ {
63
+ relatedForms: {},
64
+ },
65
+ (ctx, body) => {
66
+ console.log("ctx", ctx);
67
+ return {
68
+ formName: body.name,
69
+ relatedForms: ctx.relatedForms,
70
+ };
71
+ },
72
+ );
73
+
74
+ export const createBuilder = () =>
75
+ new EnhancedAgent<
76
+ {
77
+ formName: string;
78
+ relatedForms: Record<string, string>;
79
+ },
80
+ typeof tools
81
+ >(
82
+ {
83
+ system: fieldsOnlyPrompt,
84
+ model: ds,
85
+ tools,
86
+ toolChoice: "required",
87
+ stopWhen: needConfirm,
88
+ },
89
+ {
90
+ type: "data-confirm",
91
+ data: {
92
+ type: "tool-confirmToSaveCheckedFields",
93
+ payload: {
94
+ formName: "",
95
+ relatedForms: {},
96
+ },
97
+ },
98
+ },
99
+ {
100
+ relatedForms: {},
101
+ },
102
+ (ctx, body) => {
103
+ console.log("ctx", ctx);
104
+ return {
105
+ formName: body.name,
106
+ relatedForms: ctx.relatedForms,
107
+ };
108
+ },
109
+ );
@@ -1,5 +1,5 @@
1
- // Approval string to be shared across frontend and backend
2
- export const APPROVAL = {
3
- YES: "Yes, confirmed.",
4
- NO: "No, denied.",
5
- } as const;
1
+ // Approval string to be shared across frontend and backend
2
+ export const APPROVAL = {
3
+ YES: "Yes, confirmed.",
4
+ NO: "No, denied.",
5
+ } as const;
@@ -1,24 +1,24 @@
1
- import { Experimental_Agent as Agent, stepCountIs } from "ai";
2
-
3
- import { ds } from "./model/ds.js";
4
-
5
- import * as tools from "./tools/index.js";
6
- import { formBuilderPrompt } from "./prompts/index.js";
7
- import {
8
- getExecutableTools,
9
- getToolsRequiringConfirmation,
10
- } from "./utils/process-confirm-tool-call.js";
11
-
12
- export const formBuilderAgent = new Agent({
13
- system: formBuilderPrompt,
14
- model: ds,
15
- tools,
16
- stopWhen: stepCountIs(200),
17
- experimental_context: {
18
- relatedForms: {},
19
- },
20
- });
21
-
22
- export const ToolsRequiringConfirmation = getToolsRequiringConfirmation(tools);
23
-
24
- export const ToolsCanBeExecutedDirectly = getExecutableTools(tools);
1
+ import { Experimental_Agent as Agent, stepCountIs } from "ai";
2
+
3
+ import { ds } from "./model/ds.js";
4
+
5
+ import * as tools from "./tools/index.js";
6
+ import { formBuilderPrompt } from "./prompts/index.js";
7
+ import {
8
+ getExecutableTools,
9
+ getToolsRequiringConfirmation,
10
+ } from "./utils/process-confirm-tool-call.js";
11
+
12
+ export const formBuilderAgent = new Agent({
13
+ system: formBuilderPrompt,
14
+ model: ds,
15
+ tools,
16
+ stopWhen: stepCountIs(200),
17
+ experimental_context: {
18
+ relatedForms: {},
19
+ },
20
+ });
21
+
22
+ export const ToolsRequiringConfirmation = getToolsRequiringConfirmation(tools);
23
+
24
+ export const ToolsCanBeExecutedDirectly = getExecutableTools(tools);
@@ -1,8 +1,8 @@
1
- import { createDeepSeek } from "@ai-sdk/deepseek";
2
-
3
- const deepseek = createDeepSeek({
4
- // todo: move to env variable && update key
5
- apiKey: "sk-f86317613ca4472b97ee4957af550b5c",
6
- });
7
-
8
- export const ds = deepseek("deepseek-chat");
1
+ import { createDeepSeek } from "@ai-sdk/deepseek";
2
+
3
+ const deepseek = createDeepSeek({
4
+ // todo: move to env variable && update key
5
+ apiKey: "sk-f86317613ca4472b97ee4957af550b5c",
6
+ });
7
+
8
+ export const ds = deepseek("deepseek-chat");
@@ -1,7 +1,7 @@
1
- import { createOpenAI } from "@ai-sdk/openai";
2
-
3
- const openai = createOpenAI({
4
- apiKey: "",
5
- });
6
-
7
- export const gpt5 = openai("gpt-5");
1
+ import { createOpenAI } from "@ai-sdk/openai";
2
+
3
+ const openai = createOpenAI({
4
+ apiKey: "",
5
+ });
6
+
7
+ export const gpt5 = openai("gpt-5");
@@ -1,7 +1,7 @@
1
- import { createVercel } from "@ai-sdk/vercel";
2
-
3
- const vercel = createVercel({
4
- apiKey: "",
5
- });
6
-
7
- export const v0 = vercel("v0-1.0-md");
1
+ import { createVercel } from "@ai-sdk/vercel";
2
+
3
+ const vercel = createVercel({
4
+ apiKey: "",
5
+ });
6
+
7
+ export const v0 = vercel("v0-1.0-md");
@@ -1,7 +1,7 @@
1
- import { createXai } from "@ai-sdk/xai";
2
-
3
- const xai = createXai({
4
- apiKey: "",
5
- });
6
-
7
- export const grok3 = xai("grok-3");
1
+ import { createXai } from "@ai-sdk/xai";
2
+
3
+ const xai = createXai({
4
+ apiKey: "",
5
+ });
6
+
7
+ export const grok3 = xai("grok-3");
@@ -1,3 +1,3 @@
1
- export const fieldsDesignDocs = `
2
- 你是表单设计专家,根据用户业务需求,列出表单字段,从业务角度给出每个字段的设计说明。
3
- `;
1
+ export const fieldsDesignDocs = `
2
+ 你是表单设计专家,根据用户业务需求,列出表单字段,从业务角度给出每个字段的设计说明。
3
+ `;