@copilotkit/react-core 0.20.1 → 0.21.0-mme-assistant-api.0
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.
- package/.turbo/turbo-build.log +84 -84
- package/CHANGELOG.md +11 -0
- package/dist/{chunk-JFUS5YVO.mjs → chunk-2YF2MC22.mjs} +21 -4
- package/dist/chunk-2YF2MC22.mjs.map +1 -0
- package/dist/{chunk-BQ5SSV4Z.mjs → chunk-3WKJ25L3.mjs} +25 -12
- package/dist/chunk-3WKJ25L3.mjs.map +1 -0
- package/dist/{chunk-EACH5HZU.mjs → chunk-KLGA2MES.mjs} +2 -2
- package/dist/{chunk-3TF6G3W5.mjs → chunk-UHTJLRI6.mjs} +2 -2
- package/dist/hooks/index.js +33 -6
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/index.mjs +3 -3
- package/dist/hooks/use-chat.js +33 -6
- package/dist/hooks/use-chat.js.map +1 -1
- package/dist/hooks/use-chat.mjs +2 -2
- package/dist/hooks/use-copilot-chat.js +33 -6
- package/dist/hooks/use-copilot-chat.js.map +1 -1
- package/dist/hooks/use-copilot-chat.mjs +3 -3
- package/dist/index.js +40 -11
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4 -4
- package/dist/lib/copilot-task.js +17 -8
- package/dist/lib/copilot-task.js.map +1 -1
- package/dist/lib/copilot-task.mjs +2 -2
- package/dist/lib/index.js +17 -8
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/index.mjs +2 -2
- package/dist/utils/fetch-chat-completion.js +24 -13
- package/dist/utils/fetch-chat-completion.js.map +1 -1
- package/dist/utils/fetch-chat-completion.mjs +1 -1
- package/package.json +4 -4
- package/src/hooks/use-chat.ts +20 -1
- package/src/utils/fetch-chat-completion.ts +25 -11
- package/dist/chunk-BQ5SSV4Z.mjs.map +0 -1
- package/dist/chunk-JFUS5YVO.mjs.map +0 -1
- /package/dist/{chunk-EACH5HZU.mjs.map → chunk-KLGA2MES.mjs.map} +0 -0
- /package/dist/{chunk-3TF6G3W5.mjs.map → chunk-UHTJLRI6.mjs.map} +0 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
> @copilotkit/react-core@0.
|
|
2
|
+
> @copilotkit/react-core@0.21.0-mme-assistant-api.0 build /home/runner/work/CopilotKit/CopilotKit/CopilotKit/packages/react-core
|
|
3
3
|
> tsup --clean
|
|
4
4
|
|
|
5
5
|
[34mCLI[39m Building entry: src/index.tsx, src/components/index.ts, src/context/copilot-context.tsx, src/context/index.ts, src/hooks/index.ts, src/hooks/use-chat.ts, src/hooks/use-copilot-chat.ts, src/hooks/use-flat-category-store.ts, src/hooks/use-make-copilot-actionable.ts, src/hooks/use-make-copilot-document-readable.ts, src/hooks/use-make-copilot-readable.ts, src/hooks/use-tree.ts, src/lib/copilot-task.ts, src/lib/index.ts, src/openai-assistants/index.ts, src/types/document-pointer.ts, src/types/index.ts, src/types/system-message.ts, src/utils/fetch-chat-completion.ts, src/utils/utils.test.ts, src/utils/utils.ts, src/components/copilot-provider/copilotkit-props.tsx, src/components/copilot-provider/copilotkit.tsx, src/components/copilot-provider/index.ts, src/components/copilot-provider/standard-copilot-api-config.tsx, src/openai-assistants/hooks/index.ts, src/openai-assistants/hooks/use-assistants.ts, src/openai-assistants/hooks/use-copilot-chat-v2.ts, src/openai-assistants/utils/index.ts, src/openai-assistants/utils/process-message-stream.ts
|
|
@@ -10,26 +10,25 @@
|
|
|
10
10
|
[34mCLI[39m Cleaning output folder
|
|
11
11
|
[34mESM[39m Build start
|
|
12
12
|
[34mCJS[39m Build start
|
|
13
|
-
[32mCJS[39m [1mdist/
|
|
14
|
-
[32mCJS[39m [1mdist/components/index.js [22m[32m15.17 KB[39m
|
|
15
|
-
[32mCJS[39m [1mdist/context/copilot-context.js [22m[32m3.62 KB[39m
|
|
16
|
-
[32mCJS[39m [1mdist/hooks/index.js [22m[32m16.68 KB[39m
|
|
17
|
-
[32mCJS[39m [1mdist/lib/copilot-task.js [22m[32m7.43 KB[39m
|
|
18
|
-
[32mCJS[39m [1mdist/openai-assistants/index.js [22m[32m9.31 KB[39m
|
|
13
|
+
[32mCJS[39m [1mdist/lib/copilot-task.js [22m[32m7.38 KB[39m
|
|
19
14
|
[32mCJS[39m [1mdist/types/document-pointer.js [22m[32m841.00 B[39m
|
|
20
|
-
[32mCJS[39m [1mdist/utils/fetch-chat-completion.js [22m[
|
|
15
|
+
[32mCJS[39m [1mdist/utils/fetch-chat-completion.js [22m[32m4.95 KB[39m
|
|
21
16
|
[32mCJS[39m [1mdist/components/copilot-provider/copilotkit-props.js [22m[32m878.00 B[39m
|
|
22
|
-
[32mCJS[39m [1mdist/openai-assistants/hooks/index.js [22m[32m9.21 KB[39m
|
|
23
17
|
[32mCJS[39m [1mdist/openai-assistants/utils/index.js [22m[32m2.30 KB[39m
|
|
18
|
+
[32mCJS[39m [1mdist/index.js [22m[32m36.75 KB[39m
|
|
19
|
+
[32mCJS[39m [1mdist/components/index.js [22m[32m15.17 KB[39m
|
|
20
|
+
[32mCJS[39m [1mdist/context/copilot-context.js [22m[32m3.62 KB[39m
|
|
24
21
|
[32mCJS[39m [1mdist/context/index.js [22m[32m3.60 KB[39m
|
|
25
|
-
[32mCJS[39m [1mdist/hooks/
|
|
26
|
-
[32mCJS[39m [1mdist/hooks/use-
|
|
22
|
+
[32mCJS[39m [1mdist/hooks/index.js [22m[32m17.41 KB[39m
|
|
23
|
+
[32mCJS[39m [1mdist/hooks/use-chat.js [22m[32m10.01 KB[39m
|
|
24
|
+
[32mCJS[39m [1mdist/hooks/use-copilot-chat.js [22m[32m15.24 KB[39m
|
|
27
25
|
[32mCJS[39m [1mdist/hooks/use-flat-category-store.js [22m[32m2.87 KB[39m
|
|
28
26
|
[32mCJS[39m [1mdist/hooks/use-make-copilot-actionable.js [22m[32m4.47 KB[39m
|
|
29
27
|
[32mCJS[39m [1mdist/hooks/use-make-copilot-document-readable.js [22m[32m4.22 KB[39m
|
|
30
28
|
[32mCJS[39m [1mdist/hooks/use-make-copilot-readable.js [22m[32m4.10 KB[39m
|
|
31
29
|
[32mCJS[39m [1mdist/hooks/use-tree.js [22m[32m5.53 KB[39m
|
|
32
|
-
[32mCJS[39m [1mdist/lib/index.js [22m[32m7.
|
|
30
|
+
[32mCJS[39m [1mdist/lib/index.js [22m[32m7.34 KB[39m
|
|
31
|
+
[32mCJS[39m [1mdist/openai-assistants/index.js [22m[32m9.31 KB[39m
|
|
33
32
|
[32mCJS[39m [1mdist/types/index.js [22m[32m797.00 B[39m
|
|
34
33
|
[32mCJS[39m [1mdist/types/system-message.js [22m[32m833.00 B[39m
|
|
35
34
|
[32mCJS[39m [1mdist/utils/utils.test.js [22m[32m184.00 B[39m
|
|
@@ -37,29 +36,29 @@
|
|
|
37
36
|
[32mCJS[39m [1mdist/components/copilot-provider/copilotkit.js [22m[32m15.17 KB[39m
|
|
38
37
|
[32mCJS[39m [1mdist/components/copilot-provider/index.js [22m[32m15.21 KB[39m
|
|
39
38
|
[32mCJS[39m [1mdist/components/copilot-provider/standard-copilot-api-config.js [22m[32m1.48 KB[39m
|
|
39
|
+
[32mCJS[39m [1mdist/openai-assistants/hooks/index.js [22m[32m9.21 KB[39m
|
|
40
40
|
[32mCJS[39m [1mdist/openai-assistants/hooks/use-assistants.js [22m[32m4.82 KB[39m
|
|
41
41
|
[32mCJS[39m [1mdist/openai-assistants/hooks/use-copilot-chat-v2.js [22m[32m9.30 KB[39m
|
|
42
42
|
[32mCJS[39m [1mdist/openai-assistants/utils/process-message-stream.js [22m[32m2.33 KB[39m
|
|
43
|
-
[32mCJS[39m [1mdist/
|
|
44
|
-
[32mCJS[39m [1mdist/components/index.js.map [22m[32m27.80 KB[39m
|
|
45
|
-
[32mCJS[39m [1mdist/context/copilot-context.js.map [22m[32m4.68 KB[39m
|
|
46
|
-
[32mCJS[39m [1mdist/hooks/index.js.map [22m[32m36.60 KB[39m
|
|
47
|
-
[32mCJS[39m [1mdist/lib/copilot-task.js.map [22m[32m16.84 KB[39m
|
|
48
|
-
[32mCJS[39m [1mdist/openai-assistants/index.js.map [22m[32m20.99 KB[39m
|
|
43
|
+
[32mCJS[39m [1mdist/lib/copilot-task.js.map [22m[32m17.19 KB[39m
|
|
49
44
|
[32mCJS[39m [1mdist/types/document-pointer.js.map [22m[32m292.00 B[39m
|
|
50
|
-
[32mCJS[39m [1mdist/utils/fetch-chat-completion.js.map [22m[32m4.
|
|
45
|
+
[32mCJS[39m [1mdist/utils/fetch-chat-completion.js.map [22m[32m4.79 KB[39m
|
|
51
46
|
[32mCJS[39m [1mdist/components/copilot-provider/copilotkit-props.js.map [22m[32m1.12 KB[39m
|
|
52
|
-
[32mCJS[39m [1mdist/openai-assistants/hooks/index.js.map [22m[32m21.29 KB[39m
|
|
53
47
|
[32mCJS[39m [1mdist/openai-assistants/utils/index.js.map [22m[32m1.44 KB[39m
|
|
48
|
+
[32mCJS[39m [1mdist/index.js.map [22m[32m68.63 KB[39m
|
|
49
|
+
[32mCJS[39m [1mdist/components/index.js.map [22m[32m27.80 KB[39m
|
|
50
|
+
[32mCJS[39m [1mdist/context/copilot-context.js.map [22m[32m4.68 KB[39m
|
|
54
51
|
[32mCJS[39m [1mdist/context/index.js.map [22m[32m4.91 KB[39m
|
|
55
|
-
[32mCJS[39m [1mdist/hooks/
|
|
56
|
-
[32mCJS[39m [1mdist/hooks/use-
|
|
52
|
+
[32mCJS[39m [1mdist/hooks/index.js.map [22m[32m38.00 KB[39m
|
|
53
|
+
[32mCJS[39m [1mdist/hooks/use-chat.js.map [22m[32m16.80 KB[39m
|
|
54
|
+
[32mCJS[39m [1mdist/hooks/use-copilot-chat.js.map [22m[32m33.09 KB[39m
|
|
57
55
|
[32mCJS[39m [1mdist/hooks/use-flat-category-store.js.map [22m[32m4.25 KB[39m
|
|
58
56
|
[32mCJS[39m [1mdist/hooks/use-make-copilot-actionable.js.map [22m[32m6.22 KB[39m
|
|
59
57
|
[32mCJS[39m [1mdist/hooks/use-make-copilot-document-readable.js.map [22m[32m5.99 KB[39m
|
|
60
58
|
[32mCJS[39m [1mdist/hooks/use-make-copilot-readable.js.map [22m[32m6.04 KB[39m
|
|
61
59
|
[32mCJS[39m [1mdist/hooks/use-tree.js.map [22m[32m8.32 KB[39m
|
|
62
|
-
[32mCJS[39m [1mdist/lib/index.js.map [22m[
|
|
60
|
+
[32mCJS[39m [1mdist/lib/index.js.map [22m[32m17.26 KB[39m
|
|
61
|
+
[32mCJS[39m [1mdist/openai-assistants/index.js.map [22m[32m20.99 KB[39m
|
|
63
62
|
[32mCJS[39m [1mdist/types/index.js.map [22m[32m253.00 B[39m
|
|
64
63
|
[32mCJS[39m [1mdist/types/system-message.js.map [22m[32m249.00 B[39m
|
|
65
64
|
[32mCJS[39m [1mdist/utils/utils.test.js.map [22m[32m354.00 B[39m
|
|
@@ -67,121 +66,122 @@
|
|
|
67
66
|
[32mCJS[39m [1mdist/components/copilot-provider/copilotkit.js.map [22m[32m27.74 KB[39m
|
|
68
67
|
[32mCJS[39m [1mdist/components/copilot-provider/index.js.map [22m[32m27.93 KB[39m
|
|
69
68
|
[32mCJS[39m [1mdist/components/copilot-provider/standard-copilot-api-config.js.map [22m[32m1.17 KB[39m
|
|
69
|
+
[32mCJS[39m [1mdist/openai-assistants/hooks/index.js.map [22m[32m21.29 KB[39m
|
|
70
70
|
[32mCJS[39m [1mdist/openai-assistants/hooks/use-assistants.js.map [22m[32m5.92 KB[39m
|
|
71
71
|
[32mCJS[39m [1mdist/openai-assistants/hooks/use-copilot-chat-v2.js.map [22m[32m20.90 KB[39m
|
|
72
72
|
[32mCJS[39m [1mdist/openai-assistants/utils/process-message-stream.js.map [22m[32m1.33 KB[39m
|
|
73
|
-
[32mCJS[39m ⚡️ Build success in
|
|
74
|
-
[32mESM[39m [1mdist/components/copilot-provider/standard-copilot-api-config.mjs [22m[32m201.00 B[39m
|
|
75
|
-
[32mESM[39m [1mdist/openai-assistants/hooks/index.mjs [22m[32m548.00 B[39m
|
|
76
|
-
[32mESM[39m [1mdist/openai-assistants/hooks/use-assistants.mjs [22m[32m2.59 KB[39m
|
|
77
|
-
[32mESM[39m [1mdist/openai-assistants/hooks/use-copilot-chat-v2.mjs [22m[32m575.00 B[39m
|
|
78
|
-
[32mESM[39m [1mdist/openai-assistants/utils/index.mjs [22m[32m206.00 B[39m
|
|
79
|
-
[32mESM[39m [1mdist/openai-assistants/utils/process-message-stream.mjs [22m[32m188.00 B[39m
|
|
80
|
-
[32mESM[39m [1mdist/types/index.mjs [22m[32m66.00 B[39m
|
|
81
|
-
[32mESM[39m [1mdist/types/system-message.mjs [22m[32m43.00 B[39m
|
|
82
|
-
[32mESM[39m [1mdist/utils/fetch-chat-completion.mjs [22m[32m319.00 B[39m
|
|
83
|
-
[32mESM[39m [1mdist/utils/utils.test.mjs [22m[32m170.00 B[39m
|
|
84
|
-
[32mESM[39m [1mdist/utils/utils.mjs [22m[32m34.00 B[39m
|
|
85
|
-
[32mESM[39m [1mdist/components/copilot-provider/copilotkit-props.mjs [22m[32m59.00 B[39m
|
|
86
|
-
[32mESM[39m [1mdist/components/copilot-provider/copilotkit.mjs [22m[32m380.00 B[39m
|
|
87
|
-
[32mESM[39m [1mdist/components/copilot-provider/index.mjs [22m[32m396.00 B[39m
|
|
88
|
-
[32mESM[39m [1mdist/hooks/use-make-copilot-actionable.mjs [22m[32m241.00 B[39m
|
|
89
|
-
[32mESM[39m [1mdist/hooks/use-make-copilot-document-readable.mjs [22m[32m260.00 B[39m
|
|
90
|
-
[32mESM[39m [1mdist/hooks/use-make-copilot-readable.mjs [22m[32m235.00 B[39m
|
|
91
|
-
[32mESM[39m [1mdist/hooks/use-tree.mjs [22m[32m171.00 B[39m
|
|
92
|
-
[32mESM[39m [1mdist/lib/copilot-task.mjs [22m[32m410.00 B[39m
|
|
93
|
-
[32mESM[39m [1mdist/lib/index.mjs [22m[32m435.00 B[39m
|
|
94
|
-
[32mESM[39m [1mdist/openai-assistants/index.mjs [22m[32m597.00 B[39m
|
|
95
|
-
[32mESM[39m [1mdist/types/document-pointer.mjs [22m[32m45.00 B[39m
|
|
73
|
+
[32mCJS[39m ⚡️ Build success in 187ms
|
|
96
74
|
[32mESM[39m [1mdist/index.mjs [22m[32m1.52 KB[39m
|
|
75
|
+
[32mESM[39m [1mdist/components/index.mjs [22m[32m407.00 B[39m
|
|
76
|
+
[32mESM[39m [1mdist/context/copilot-context.mjs [22m[32m219.00 B[39m
|
|
77
|
+
[32mESM[39m [1mdist/hooks/index.mjs [22m[32m769.00 B[39m
|
|
97
78
|
[32mESM[39m [1mdist/chunk-EFZPSZWO.mjs [22m[32m43.00 B[39m
|
|
98
79
|
[32mESM[39m [1mdist/chunk-LUGEI4YQ.mjs [22m[32m43.00 B[39m
|
|
99
|
-
[32mESM[39m [1mdist/chunk-
|
|
80
|
+
[32mESM[39m [1mdist/chunk-KLGA2MES.mjs [22m[32m3.17 KB[39m
|
|
100
81
|
[32mESM[39m [1mdist/chunk-7GFKOIO7.mjs [22m[32m43.00 B[39m
|
|
101
82
|
[32mESM[39m [1mdist/chunk-BABVSMJR.mjs [22m[32m43.00 B[39m
|
|
102
83
|
[32mESM[39m [1mdist/chunk-6WZFE6II.mjs [22m[32m4.39 KB[39m
|
|
103
84
|
[32mESM[39m [1mdist/chunk-FRAKUJWH.mjs [22m[32m43.00 B[39m
|
|
104
85
|
[32mESM[39m [1mdist/chunk-MZ5UN3BY.mjs [22m[32m802.00 B[39m
|
|
105
|
-
[32mESM[39m [1mdist/components/index.mjs [22m[32m407.00 B[39m
|
|
106
|
-
[32mESM[39m [1mdist/context/copilot-context.mjs [22m[32m219.00 B[39m
|
|
107
86
|
[32mESM[39m [1mdist/context/index.mjs [22m[32m227.00 B[39m
|
|
108
87
|
[32mESM[39m [1mdist/chunk-VNRDQJXW.mjs [22m[32m43.00 B[39m
|
|
109
|
-
[32mESM[39m [1mdist/hooks/index.mjs [22m[32m769.00 B[39m
|
|
110
88
|
[32mESM[39m [1mdist/chunk-5UGLWBZJ.mjs [22m[32m43.00 B[39m
|
|
111
89
|
[32mESM[39m [1mdist/chunk-WH4L73VS.mjs [22m[32m970.00 B[39m
|
|
112
90
|
[32mESM[39m [1mdist/chunk-JVCBCB2T.mjs [22m[32m700.00 B[39m
|
|
113
91
|
[32mESM[39m [1mdist/chunk-2EP7VLPI.mjs [22m[32m640.00 B[39m
|
|
114
92
|
[32mESM[39m [1mdist/hooks/use-chat.mjs [22m[32m174.00 B[39m
|
|
115
93
|
[32mESM[39m [1mdist/hooks/use-copilot-chat.mjs [22m[32m500.00 B[39m
|
|
116
|
-
[32mESM[39m [1mdist/chunk-
|
|
94
|
+
[32mESM[39m [1mdist/chunk-UHTJLRI6.mjs [22m[32m2.89 KB[39m
|
|
117
95
|
[32mESM[39m [1mdist/chunk-JD7BAH7U.mjs [22m[32m43.00 B[39m
|
|
118
96
|
[32mESM[39m [1mdist/chunk-SPCZTZCY.mjs [22m[32m43.00 B[39m
|
|
119
97
|
[32mESM[39m [1mdist/chunk-PHK2K7UB.mjs [22m[32m4.60 KB[39m
|
|
120
98
|
[32mESM[39m [1mdist/chunk-F2JIAPZQ.mjs [22m[32m405.00 B[39m
|
|
121
99
|
[32mESM[39m [1mdist/chunk-VUY2K2DI.mjs [22m[32m3.89 KB[39m
|
|
122
100
|
[32mESM[39m [1mdist/chunk-S7ZVOTYK.mjs [22m[32m1.42 KB[39m
|
|
123
|
-
[32mESM[39m [1mdist/chunk-
|
|
124
|
-
[32mESM[39m [1mdist/chunk-
|
|
101
|
+
[32mESM[39m [1mdist/chunk-2YF2MC22.mjs [22m[32m5.65 KB[39m
|
|
102
|
+
[32mESM[39m [1mdist/chunk-3WKJ25L3.mjs [22m[32m2.69 KB[39m
|
|
125
103
|
[32mESM[39m [1mdist/hooks/use-flat-category-store.mjs [22m[32m216.00 B[39m
|
|
126
104
|
[32mESM[39m [1mdist/chunk-YULKJPY3.mjs [22m[32m1.84 KB[39m
|
|
127
105
|
[32mESM[39m [1mdist/chunk-MRXNTQOX.mjs [22m[32m1.89 KB[39m
|
|
128
|
-
[32mESM[39m [1mdist/
|
|
129
|
-
[32mESM[39m [1mdist/
|
|
130
|
-
[32mESM[39m [1mdist/openai-assistants/hooks/use-assistants.mjs
|
|
131
|
-
[32mESM[39m [1mdist/openai-assistants/hooks/use-copilot-chat-v2.mjs
|
|
132
|
-
[32mESM[39m [1mdist/openai-assistants/utils/index.mjs
|
|
133
|
-
[32mESM[39m [1mdist/openai-assistants/utils/process-message-stream.mjs
|
|
134
|
-
[32mESM[39m [1mdist/types/index.mjs
|
|
135
|
-
[32mESM[39m [1mdist/types/system-message.mjs
|
|
136
|
-
[32mESM[39m [1mdist/utils/fetch-chat-completion.mjs
|
|
137
|
-
[32mESM[39m [1mdist/utils/utils.test.mjs
|
|
138
|
-
[32mESM[39m [1mdist/utils/utils.mjs
|
|
139
|
-
[32mESM[39m [1mdist/components/copilot-provider/copilotkit-props.mjs
|
|
140
|
-
[32mESM[39m [1mdist/components/copilot-provider/copilotkit.mjs
|
|
141
|
-
[32mESM[39m [1mdist/components/copilot-provider/index.mjs
|
|
142
|
-
[32mESM[39m [1mdist/hooks/use-make-copilot-actionable.mjs
|
|
143
|
-
[32mESM[39m [1mdist/hooks/use-make-copilot-document-readable.mjs
|
|
144
|
-
[32mESM[39m [1mdist/hooks/use-make-copilot-readable.mjs
|
|
145
|
-
[32mESM[39m [1mdist/hooks/use-tree.mjs
|
|
146
|
-
[32mESM[39m [1mdist/lib/copilot-task.mjs
|
|
147
|
-
[32mESM[39m [1mdist/lib/index.mjs
|
|
148
|
-
[32mESM[39m [1mdist/openai-assistants/index.mjs
|
|
149
|
-
[32mESM[39m [1mdist/types/document-pointer.mjs
|
|
106
|
+
[32mESM[39m [1mdist/openai-assistants/hooks/index.mjs [22m[32m548.00 B[39m
|
|
107
|
+
[32mESM[39m [1mdist/components/copilot-provider/standard-copilot-api-config.mjs [22m[32m201.00 B[39m
|
|
108
|
+
[32mESM[39m [1mdist/openai-assistants/hooks/use-assistants.mjs [22m[32m2.59 KB[39m
|
|
109
|
+
[32mESM[39m [1mdist/openai-assistants/hooks/use-copilot-chat-v2.mjs [22m[32m575.00 B[39m
|
|
110
|
+
[32mESM[39m [1mdist/openai-assistants/utils/index.mjs [22m[32m206.00 B[39m
|
|
111
|
+
[32mESM[39m [1mdist/openai-assistants/utils/process-message-stream.mjs [22m[32m188.00 B[39m
|
|
112
|
+
[32mESM[39m [1mdist/types/index.mjs [22m[32m66.00 B[39m
|
|
113
|
+
[32mESM[39m [1mdist/types/system-message.mjs [22m[32m43.00 B[39m
|
|
114
|
+
[32mESM[39m [1mdist/utils/fetch-chat-completion.mjs [22m[32m319.00 B[39m
|
|
115
|
+
[32mESM[39m [1mdist/utils/utils.test.mjs [22m[32m170.00 B[39m
|
|
116
|
+
[32mESM[39m [1mdist/utils/utils.mjs [22m[32m34.00 B[39m
|
|
117
|
+
[32mESM[39m [1mdist/components/copilot-provider/copilotkit-props.mjs [22m[32m59.00 B[39m
|
|
118
|
+
[32mESM[39m [1mdist/components/copilot-provider/copilotkit.mjs [22m[32m380.00 B[39m
|
|
119
|
+
[32mESM[39m [1mdist/components/copilot-provider/index.mjs [22m[32m396.00 B[39m
|
|
120
|
+
[32mESM[39m [1mdist/hooks/use-make-copilot-actionable.mjs [22m[32m241.00 B[39m
|
|
121
|
+
[32mESM[39m [1mdist/hooks/use-make-copilot-document-readable.mjs [22m[32m260.00 B[39m
|
|
122
|
+
[32mESM[39m [1mdist/hooks/use-make-copilot-readable.mjs [22m[32m235.00 B[39m
|
|
123
|
+
[32mESM[39m [1mdist/hooks/use-tree.mjs [22m[32m171.00 B[39m
|
|
124
|
+
[32mESM[39m [1mdist/lib/copilot-task.mjs [22m[32m410.00 B[39m
|
|
125
|
+
[32mESM[39m [1mdist/lib/index.mjs [22m[32m435.00 B[39m
|
|
126
|
+
[32mESM[39m [1mdist/openai-assistants/index.mjs [22m[32m597.00 B[39m
|
|
127
|
+
[32mESM[39m [1mdist/types/document-pointer.mjs [22m[32m45.00 B[39m
|
|
150
128
|
[32mESM[39m [1mdist/index.mjs.map [22m[32m71.00 B[39m
|
|
129
|
+
[32mESM[39m [1mdist/components/index.mjs.map [22m[32m71.00 B[39m
|
|
130
|
+
[32mESM[39m [1mdist/context/copilot-context.mjs.map [22m[32m71.00 B[39m
|
|
131
|
+
[32mESM[39m [1mdist/hooks/index.mjs.map [22m[32m71.00 B[39m
|
|
151
132
|
[32mESM[39m [1mdist/chunk-EFZPSZWO.mjs.map [22m[32m71.00 B[39m
|
|
152
133
|
[32mESM[39m [1mdist/chunk-LUGEI4YQ.mjs.map [22m[32m71.00 B[39m
|
|
153
|
-
[32mESM[39m [1mdist/chunk-
|
|
134
|
+
[32mESM[39m [1mdist/chunk-KLGA2MES.mjs.map [22m[32m5.55 KB[39m
|
|
154
135
|
[32mESM[39m [1mdist/chunk-7GFKOIO7.mjs.map [22m[32m71.00 B[39m
|
|
155
136
|
[32mESM[39m [1mdist/chunk-BABVSMJR.mjs.map [22m[32m71.00 B[39m
|
|
156
137
|
[32mESM[39m [1mdist/chunk-6WZFE6II.mjs.map [22m[32m7.90 KB[39m
|
|
157
138
|
[32mESM[39m [1mdist/chunk-FRAKUJWH.mjs.map [22m[32m71.00 B[39m
|
|
158
139
|
[32mESM[39m [1mdist/chunk-MZ5UN3BY.mjs.map [22m[32m1.26 KB[39m
|
|
159
|
-
[32mESM[39m [1mdist/components/index.mjs.map [22m[32m71.00 B[39m
|
|
160
|
-
[32mESM[39m [1mdist/context/copilot-context.mjs.map [22m[32m71.00 B[39m
|
|
161
140
|
[32mESM[39m [1mdist/context/index.mjs.map [22m[32m71.00 B[39m
|
|
162
141
|
[32mESM[39m [1mdist/chunk-VNRDQJXW.mjs.map [22m[32m71.00 B[39m
|
|
163
|
-
[32mESM[39m [1mdist/hooks/index.mjs.map [22m[32m71.00 B[39m
|
|
164
142
|
[32mESM[39m [1mdist/chunk-5UGLWBZJ.mjs.map [22m[32m71.00 B[39m
|
|
165
143
|
[32mESM[39m [1mdist/chunk-WH4L73VS.mjs.map [22m[32m1.66 KB[39m
|
|
166
144
|
[32mESM[39m [1mdist/chunk-JVCBCB2T.mjs.map [22m[32m1.42 KB[39m
|
|
167
145
|
[32mESM[39m [1mdist/chunk-2EP7VLPI.mjs.map [22m[32m1.47 KB[39m
|
|
168
146
|
[32mESM[39m [1mdist/hooks/use-chat.mjs.map [22m[32m71.00 B[39m
|
|
169
147
|
[32mESM[39m [1mdist/hooks/use-copilot-chat.mjs.map [22m[32m71.00 B[39m
|
|
170
|
-
[32mESM[39m [1mdist/chunk-
|
|
148
|
+
[32mESM[39m [1mdist/chunk-UHTJLRI6.mjs.map [22m[32m4.59 KB[39m
|
|
171
149
|
[32mESM[39m [1mdist/chunk-JD7BAH7U.mjs.map [22m[32m71.00 B[39m
|
|
172
150
|
[32mESM[39m [1mdist/chunk-SPCZTZCY.mjs.map [22m[32m71.00 B[39m
|
|
173
151
|
[32mESM[39m [1mdist/chunk-PHK2K7UB.mjs.map [22m[32m9.68 KB[39m
|
|
174
152
|
[32mESM[39m [1mdist/chunk-F2JIAPZQ.mjs.map [22m[32m1.12 KB[39m
|
|
175
153
|
[32mESM[39m [1mdist/chunk-VUY2K2DI.mjs.map [22m[32m8.27 KB[39m
|
|
176
154
|
[32mESM[39m [1mdist/chunk-S7ZVOTYK.mjs.map [22m[32m4.59 KB[39m
|
|
177
|
-
[32mESM[39m [1mdist/chunk-
|
|
178
|
-
[32mESM[39m [1mdist/chunk-
|
|
155
|
+
[32mESM[39m [1mdist/chunk-2YF2MC22.mjs.map [22m[32m12.34 KB[39m
|
|
156
|
+
[32mESM[39m [1mdist/chunk-3WKJ25L3.mjs.map [22m[32m4.75 KB[39m
|
|
179
157
|
[32mESM[39m [1mdist/hooks/use-flat-category-store.mjs.map [22m[32m71.00 B[39m
|
|
180
158
|
[32mESM[39m [1mdist/chunk-YULKJPY3.mjs.map [22m[32m4.21 KB[39m
|
|
181
159
|
[32mESM[39m [1mdist/chunk-MRXNTQOX.mjs.map [22m[32m71.00 B[39m
|
|
182
|
-
[32mESM[39m
|
|
160
|
+
[32mESM[39m [1mdist/openai-assistants/hooks/index.mjs.map [22m[32m71.00 B[39m
|
|
161
|
+
[32mESM[39m [1mdist/components/copilot-provider/standard-copilot-api-config.mjs.map [22m[32m71.00 B[39m
|
|
162
|
+
[32mESM[39m [1mdist/openai-assistants/hooks/use-assistants.mjs.map [22m[32m4.67 KB[39m
|
|
163
|
+
[32mESM[39m [1mdist/openai-assistants/hooks/use-copilot-chat-v2.mjs.map [22m[32m71.00 B[39m
|
|
164
|
+
[32mESM[39m [1mdist/openai-assistants/utils/index.mjs.map [22m[32m71.00 B[39m
|
|
165
|
+
[32mESM[39m [1mdist/openai-assistants/utils/process-message-stream.mjs.map [22m[32m71.00 B[39m
|
|
166
|
+
[32mESM[39m [1mdist/types/index.mjs.map [22m[32m71.00 B[39m
|
|
167
|
+
[32mESM[39m [1mdist/types/system-message.mjs.map [22m[32m71.00 B[39m
|
|
168
|
+
[32mESM[39m [1mdist/utils/fetch-chat-completion.mjs.map [22m[32m71.00 B[39m
|
|
169
|
+
[32mESM[39m [1mdist/utils/utils.test.mjs.map [22m[32m352.00 B[39m
|
|
170
|
+
[32mESM[39m [1mdist/utils/utils.mjs.map [22m[32m71.00 B[39m
|
|
171
|
+
[32mESM[39m [1mdist/components/copilot-provider/copilotkit-props.mjs.map [22m[32m71.00 B[39m
|
|
172
|
+
[32mESM[39m [1mdist/components/copilot-provider/copilotkit.mjs.map [22m[32m71.00 B[39m
|
|
173
|
+
[32mESM[39m [1mdist/components/copilot-provider/index.mjs.map [22m[32m71.00 B[39m
|
|
174
|
+
[32mESM[39m [1mdist/hooks/use-make-copilot-actionable.mjs.map [22m[32m71.00 B[39m
|
|
175
|
+
[32mESM[39m [1mdist/hooks/use-make-copilot-document-readable.mjs.map [22m[32m71.00 B[39m
|
|
176
|
+
[32mESM[39m [1mdist/hooks/use-make-copilot-readable.mjs.map [22m[32m71.00 B[39m
|
|
177
|
+
[32mESM[39m [1mdist/hooks/use-tree.mjs.map [22m[32m71.00 B[39m
|
|
178
|
+
[32mESM[39m [1mdist/lib/copilot-task.mjs.map [22m[32m71.00 B[39m
|
|
179
|
+
[32mESM[39m [1mdist/lib/index.mjs.map [22m[32m71.00 B[39m
|
|
180
|
+
[32mESM[39m [1mdist/openai-assistants/index.mjs.map [22m[32m71.00 B[39m
|
|
181
|
+
[32mESM[39m [1mdist/types/document-pointer.mjs.map [22m[32m71.00 B[39m
|
|
182
|
+
[32mESM[39m ⚡️ Build success in 192ms
|
|
183
183
|
[34mDTS[39m Build start
|
|
184
|
-
[32mDTS[39m ⚡️ Build success in
|
|
184
|
+
[32mDTS[39m ⚡️ Build success in 5689ms
|
|
185
185
|
[32mDTS[39m [1mdist/index.d.ts [22m[32m1.41 KB[39m
|
|
186
186
|
[32mDTS[39m [1mdist/components/copilot-provider/copilotkit.d.ts [22m[32m1.26 KB[39m
|
|
187
187
|
[32mDTS[39m [1mdist/components/copilot-provider/copilotkit-props.d.ts [22m[32m1007.00 B[39m
|
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
fetchAndDecodeChatCompletion
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3WKJ25L3.mjs";
|
|
4
4
|
import {
|
|
5
|
-
__async
|
|
5
|
+
__async,
|
|
6
|
+
__spreadProps,
|
|
7
|
+
__spreadValues
|
|
6
8
|
} from "./chunk-MRXNTQOX.mjs";
|
|
7
9
|
|
|
8
10
|
// src/hooks/use-chat.ts
|
|
@@ -14,6 +16,8 @@ function useChat(options) {
|
|
|
14
16
|
const [input, setInput] = useState("");
|
|
15
17
|
const [isLoading, setIsLoading] = useState(false);
|
|
16
18
|
const abortControllerRef = useRef();
|
|
19
|
+
const threadIdRef = useRef(null);
|
|
20
|
+
const runIdRef = useRef(null);
|
|
17
21
|
const runChatCompletion = (messages2) => __async(this, null, function* () {
|
|
18
22
|
setIsLoading(true);
|
|
19
23
|
const newMessages = [
|
|
@@ -27,14 +31,27 @@ function useChat(options) {
|
|
|
27
31
|
const abortController = new AbortController();
|
|
28
32
|
abortControllerRef.current = abortController;
|
|
29
33
|
setMessages([...messages2, ...newMessages]);
|
|
34
|
+
const copilotConfigBody = options.copilotConfig.body || {};
|
|
35
|
+
if (threadIdRef.current) {
|
|
36
|
+
copilotConfigBody.threadId = threadIdRef.current;
|
|
37
|
+
}
|
|
38
|
+
if (runIdRef.current) {
|
|
39
|
+
copilotConfigBody.runId = runIdRef.current;
|
|
40
|
+
}
|
|
30
41
|
const messagesWithContext = [...options.initialMessages || [], ...messages2];
|
|
31
42
|
const response = yield fetchAndDecodeChatCompletion({
|
|
32
|
-
copilotConfig: options.copilotConfig,
|
|
43
|
+
copilotConfig: __spreadProps(__spreadValues({}, options.copilotConfig), { body: copilotConfigBody }),
|
|
33
44
|
messages: messagesWithContext,
|
|
34
45
|
tools: options.tools,
|
|
35
46
|
headers: options.headers,
|
|
36
47
|
signal: abortController.signal
|
|
37
48
|
});
|
|
49
|
+
if (response.headers.get("threadid")) {
|
|
50
|
+
threadIdRef.current = response.headers.get("threadid");
|
|
51
|
+
}
|
|
52
|
+
if (response.headers.get("runid")) {
|
|
53
|
+
runIdRef.current = response.headers.get("runid");
|
|
54
|
+
}
|
|
38
55
|
if (!response.events) {
|
|
39
56
|
throw new Error("Failed to fetch chat completion");
|
|
40
57
|
}
|
|
@@ -155,4 +172,4 @@ function useChat(options) {
|
|
|
155
172
|
export {
|
|
156
173
|
useChat
|
|
157
174
|
};
|
|
158
|
-
//# sourceMappingURL=chunk-
|
|
175
|
+
//# sourceMappingURL=chunk-2YF2MC22.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/hooks/use-chat.ts"],"sourcesContent":["import { useRef, useState } from \"react\";\nimport { Message, ToolDefinition, FunctionCallHandler, encodeResult } from \"@copilotkit/shared\";\nimport { nanoid } from \"nanoid\";\nimport { fetchAndDecodeChatCompletion } from \"../utils/fetch-chat-completion\";\nimport { CopilotApiConfig } from \"../context\";\n\nexport type UseChatOptions = {\n /**\n * The API endpoint that accepts a `{ messages: Message[] }` object and returns\n * a stream of tokens of the AI chat response. Defaults to `/api/chat`.\n */\n api?: string;\n /**\n * A unique identifier for the chat. If not provided, a random one will be\n * generated. When provided, the `useChat` hook with the same `id` will\n * have shared states across components.\n */\n id?: string;\n /**\n * System messages of the chat. Defaults to an empty array.\n */\n initialMessages?: Message[];\n /**\n * Callback function to be called when a function call is received.\n * If the function returns a `ChatRequest` object, the request will be sent\n * automatically to the API and will be used to update the chat.\n */\n onFunctionCall?: FunctionCallHandler;\n /**\n * HTTP headers to be sent with the API request.\n */\n headers?: Record<string, string> | Headers;\n /**\n * Extra body object to be sent with the API request.\n * @example\n * Send a `sessionId` to the API along with the messages.\n * ```js\n * useChat({\n * body: {\n * sessionId: '123',\n * }\n * })\n * ```\n */\n body?: object;\n /**\n * Function definitions to be sent to the API.\n */\n tools?: ToolDefinition[];\n};\n\nexport type UseChatHelpers = {\n /** Current messages in the chat */\n messages: Message[];\n /**\n * Append a user message to the chat list. This triggers the API call to fetch\n * the assistant's response.\n * @param message The message to append\n */\n append: (message: Message) => Promise<void>;\n /**\n * Reload the last AI chat response for the given chat history. If the last\n * message isn't from the assistant, it will request the API to generate a\n * new response.\n */\n reload: () => Promise<void>;\n /**\n * Abort the current request immediately, keep the generated tokens if any.\n */\n stop: () => void;\n /** The current value of the input */\n input: string;\n /** setState-powered method to update the input value */\n setInput: React.Dispatch<React.SetStateAction<string>>;\n /** Whether the API request is in progress */\n isLoading: boolean;\n};\n\nexport type UseChatOptionsWithCopilotConfig = UseChatOptions & {\n copilotConfig: CopilotApiConfig;\n};\n\nexport function useChat(options: UseChatOptionsWithCopilotConfig): UseChatHelpers {\n const [messages, setMessages] = useState<Message[]>([]);\n const [input, setInput] = useState(\"\");\n const [isLoading, setIsLoading] = useState(false);\n const abortControllerRef = useRef<AbortController>();\n const threadIdRef = useRef<string | null>(null);\n const runIdRef = useRef<string | null>(null);\n\n const runChatCompletion = async (messages: Message[]): Promise<Message[]> => {\n setIsLoading(true);\n\n const newMessages: Message[] = [\n {\n id: nanoid(),\n createdAt: new Date(),\n content: \"\",\n role: \"assistant\",\n },\n ];\n const abortController = new AbortController();\n abortControllerRef.current = abortController;\n\n setMessages([...messages, ...newMessages]);\n\n // add threadId and runId to the body if it exists\n const copilotConfigBody = options.copilotConfig.body || {};\n if (threadIdRef.current) {\n copilotConfigBody.threadId = threadIdRef.current;\n }\n if (runIdRef.current) {\n copilotConfigBody.runId = runIdRef.current;\n }\n\n const messagesWithContext = [...(options.initialMessages || []), ...messages];\n const response = await fetchAndDecodeChatCompletion({\n copilotConfig: { ...options.copilotConfig, body: copilotConfigBody },\n messages: messagesWithContext,\n tools: options.tools,\n headers: options.headers,\n signal: abortController.signal,\n });\n\n if (response.headers.get(\"threadid\")) {\n threadIdRef.current = response.headers.get(\"threadid\");\n }\n\n if (response.headers.get(\"runid\")) {\n runIdRef.current = response.headers.get(\"runid\");\n }\n\n if (!response.events) {\n throw new Error(\"Failed to fetch chat completion\");\n }\n\n const reader = response.events.getReader();\n\n // Whether to feed back the new messages to GPT\n let feedback = false;\n\n try {\n while (true) {\n const { done, value } = await reader.read();\n\n if (done) {\n break;\n }\n\n let currentMessage = Object.assign({}, newMessages[newMessages.length - 1]);\n\n if (value.type === \"content\") {\n if (currentMessage.function_call || currentMessage.role === \"function\") {\n // Create a new message if the previous one is a function call or result\n currentMessage = {\n id: nanoid(),\n createdAt: new Date(),\n content: \"\",\n role: \"assistant\",\n };\n newMessages.push(currentMessage);\n }\n currentMessage.content += value.content;\n newMessages[newMessages.length - 1] = currentMessage;\n setMessages([...messages, ...newMessages]);\n } else if (value.type === \"result\") {\n // When we get a result message, it is already complete\n currentMessage = {\n id: nanoid(),\n role: \"function\",\n content: value.content,\n name: value.name,\n };\n newMessages.push(currentMessage);\n setMessages([...messages, ...newMessages]);\n\n // After receiving a result, feed back the new messages to GPT\n feedback = true;\n } else if (value.type === \"function\") {\n // Create a new message if the previous one is not empty\n if (\n currentMessage.content != \"\" ||\n currentMessage.function_call ||\n currentMessage.role == \"function\"\n ) {\n currentMessage = {\n id: nanoid(),\n createdAt: new Date(),\n content: \"\",\n role: \"assistant\",\n };\n newMessages.push(currentMessage);\n }\n currentMessage.function_call = {\n name: value.name,\n arguments: JSON.stringify(value.arguments),\n scope: value.scope,\n };\n\n newMessages[newMessages.length - 1] = currentMessage;\n setMessages([...messages, ...newMessages]);\n\n // Execute the function call\n try {\n if (options.onFunctionCall && value.scope === \"client\") {\n const result = await options.onFunctionCall(messages, currentMessage.function_call);\n\n currentMessage = {\n id: nanoid(),\n role: \"function\",\n content: encodeResult(result),\n name: currentMessage.function_call!.name!,\n };\n newMessages.push(currentMessage);\n setMessages([...messages, ...newMessages]);\n\n // After a function call, feed back the new messages to GPT\n feedback = true;\n }\n } catch (error) {\n console.error(\"Failed to execute function call\", error);\n // TODO: Handle error\n // this should go to the message itself\n }\n }\n }\n\n // If we want feedback, run the completion again and return the results\n if (feedback) {\n return await runChatCompletion([...messages, ...newMessages]);\n }\n // otherwise, return the new messages\n else {\n return newMessages.slice();\n }\n } finally {\n setIsLoading(false);\n }\n };\n\n const runChatCompletionAndHandleFunctionCall = async (messages: Message[]): Promise<void> => {\n await runChatCompletion(messages);\n };\n\n const append = async (message: Message): Promise<void> => {\n if (isLoading) {\n return;\n }\n const newMessages = [...messages, message];\n setMessages(newMessages);\n return runChatCompletionAndHandleFunctionCall(newMessages);\n };\n\n const reload = async (): Promise<void> => {\n if (isLoading || messages.length === 0) {\n return;\n }\n let newMessages = [...messages];\n const lastMessage = messages[messages.length - 1];\n\n if (lastMessage.role === \"assistant\") {\n newMessages = newMessages.slice(0, -1);\n }\n setMessages(newMessages);\n\n return runChatCompletionAndHandleFunctionCall(newMessages);\n };\n\n const stop = (): void => {\n abortControllerRef.current?.abort();\n };\n\n return {\n messages,\n append,\n reload,\n stop,\n isLoading,\n input,\n setInput,\n };\n}\n"],"mappings":"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","names":["messages"]}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import {
|
|
2
2
|
__async,
|
|
3
|
-
__spreadProps,
|
|
4
3
|
__spreadValues
|
|
5
4
|
} from "./chunk-MRXNTQOX.mjs";
|
|
6
5
|
|
|
@@ -22,7 +21,6 @@ function fetchChatCompletion(_0) {
|
|
|
22
21
|
body,
|
|
23
22
|
signal
|
|
24
23
|
}) {
|
|
25
|
-
var _a, _b;
|
|
26
24
|
temperature || (temperature = 0.5);
|
|
27
25
|
tools || (tools = []);
|
|
28
26
|
const cleanedMessages = messages.map((message) => {
|
|
@@ -38,32 +36,47 @@ function fetchChatCompletion(_0) {
|
|
|
38
36
|
model,
|
|
39
37
|
messages: cleanedMessages,
|
|
40
38
|
stream: true
|
|
41
|
-
}, tools.length ? { tools } : {}), temperature ? { temperature } : {}), tools.length != 0 ? { tool_choice: "auto" } : {}), copilotConfig.body), copilotConfig.backendOnlyProps),
|
|
39
|
+
}, tools.length ? { tools } : {}), temperature ? { temperature } : {}), tools.length != 0 ? { tool_choice: "auto" } : {}), copilotConfig.body), copilotConfig.backendOnlyProps), excludeBackendOnlyProps(copilotConfig)), body ? __spreadValues({}, body) : {})),
|
|
42
40
|
signal
|
|
43
41
|
});
|
|
44
42
|
return response;
|
|
45
43
|
});
|
|
46
44
|
}
|
|
45
|
+
function excludeBackendOnlyProps(copilotConfig) {
|
|
46
|
+
var _a;
|
|
47
|
+
const backendOnlyProps = (_a = copilotConfig.backendOnlyProps) != null ? _a : {};
|
|
48
|
+
if (Object.keys(backendOnlyProps).length > 0) {
|
|
49
|
+
return {
|
|
50
|
+
[EXCLUDE_FROM_FORWARD_PROPS_KEYS]: Object.keys(backendOnlyProps)
|
|
51
|
+
};
|
|
52
|
+
} else {
|
|
53
|
+
return {};
|
|
54
|
+
}
|
|
55
|
+
}
|
|
47
56
|
function fetchAndDecodeChatCompletion(params) {
|
|
48
57
|
return __async(this, null, function* () {
|
|
49
58
|
const response = yield fetchChatCompletion(params);
|
|
50
59
|
if (!response.ok || !response.body) {
|
|
51
|
-
|
|
60
|
+
response.events = null;
|
|
61
|
+
} else {
|
|
62
|
+
const events = yield decodeChatCompletion(parseChatCompletion(response.body));
|
|
63
|
+
response.events = events;
|
|
52
64
|
}
|
|
53
|
-
|
|
54
|
-
return __spreadProps(__spreadValues({}, response), { events });
|
|
65
|
+
return response;
|
|
55
66
|
});
|
|
56
67
|
}
|
|
57
68
|
function fetchAndDecodeChatCompletionAsText(params) {
|
|
58
69
|
return __async(this, null, function* () {
|
|
59
70
|
const response = yield fetchChatCompletion(params);
|
|
60
71
|
if (!response.ok || !response.body) {
|
|
61
|
-
|
|
72
|
+
response.events = null;
|
|
73
|
+
} else {
|
|
74
|
+
const events = yield decodeChatCompletionAsText(
|
|
75
|
+
decodeChatCompletion(parseChatCompletion(response.body))
|
|
76
|
+
);
|
|
77
|
+
response.events = events;
|
|
62
78
|
}
|
|
63
|
-
|
|
64
|
-
decodeChatCompletion(parseChatCompletion(response.body))
|
|
65
|
-
);
|
|
66
|
-
return __spreadProps(__spreadValues({}, response), { events });
|
|
79
|
+
return response;
|
|
67
80
|
});
|
|
68
81
|
}
|
|
69
82
|
|
|
@@ -72,4 +85,4 @@ export {
|
|
|
72
85
|
fetchAndDecodeChatCompletion,
|
|
73
86
|
fetchAndDecodeChatCompletionAsText
|
|
74
87
|
};
|
|
75
|
-
//# sourceMappingURL=chunk-
|
|
88
|
+
//# sourceMappingURL=chunk-3WKJ25L3.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/fetch-chat-completion.ts"],"sourcesContent":["import {\n Message,\n ToolDefinition,\n ChatCompletionEvent,\n decodeChatCompletion,\n parseChatCompletion,\n decodeChatCompletionAsText,\n EXCLUDE_FROM_FORWARD_PROPS_KEYS,\n} from \"@copilotkit/shared\";\nimport { CopilotApiConfig } from \"../context\";\n\nexport interface FetchChatCompletionParams {\n copilotConfig: CopilotApiConfig;\n model?: string;\n messages: Message[];\n tools?: ToolDefinition[];\n temperature?: number;\n maxTokens?: number;\n headers?: Record<string, string> | Headers;\n body?: object;\n signal?: AbortSignal;\n}\n\nexport async function fetchChatCompletion({\n copilotConfig,\n model,\n messages,\n tools,\n temperature,\n headers,\n body,\n signal,\n}: FetchChatCompletionParams): Promise<Response> {\n temperature ||= 0.5;\n tools ||= [];\n\n // clean up any extra properties from messages\n const cleanedMessages = messages.map((message) => {\n const { content, role, name, function_call } = message;\n return { content, role, name, function_call };\n });\n\n const response = await fetch(copilotConfig.chatApiEndpoint, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...copilotConfig.headers,\n ...(headers ? { ...headers } : {}),\n },\n body: JSON.stringify({\n model,\n messages: cleanedMessages,\n stream: true,\n ...(tools.length ? { tools } : {}),\n ...(temperature ? { temperature } : {}),\n ...(tools.length != 0 ? { tool_choice: \"auto\" } : {}),\n ...copilotConfig.body,\n ...copilotConfig.backendOnlyProps,\n ...excludeBackendOnlyProps(copilotConfig),\n ...(body ? { ...body } : {}),\n }),\n signal,\n });\n\n return response;\n}\n\nfunction excludeBackendOnlyProps(copilotConfig: any) {\n const backendOnlyProps = copilotConfig.backendOnlyProps ?? {};\n if (Object.keys(backendOnlyProps).length > 0) {\n return {\n [EXCLUDE_FROM_FORWARD_PROPS_KEYS]: Object.keys(backendOnlyProps),\n };\n } else {\n return {};\n }\n}\n\nexport interface DecodedChatCompletionResponse extends Response {\n events: ReadableStream<ChatCompletionEvent> | null;\n}\n\nexport async function fetchAndDecodeChatCompletion(\n params: FetchChatCompletionParams,\n): Promise<DecodedChatCompletionResponse> {\n const response = await fetchChatCompletion(params);\n if (!response.ok || !response.body) {\n (response as any).events = null;\n } else {\n const events = await decodeChatCompletion(parseChatCompletion(response.body));\n (response as any).events = events;\n }\n return response as any;\n}\n\nexport interface DecodedChatCompletionResponseAsText extends Response {\n events: ReadableStream<string> | null;\n}\n\nexport async function fetchAndDecodeChatCompletionAsText(\n params: FetchChatCompletionParams,\n): Promise<DecodedChatCompletionResponseAsText> {\n const response = await fetchChatCompletion(params);\n if (!response.ok || !response.body) {\n (response as any).events = null;\n } else {\n const events = await decodeChatCompletionAsText(\n decodeChatCompletion(parseChatCompletion(response.body)),\n );\n (response as any).events = events;\n }\n\n return response as any;\n}\n"],"mappings":";;;;;;AAAA;AAAA,EAIE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAeP,SAAsB,oBAAoB,IASO;AAAA,6CATP;AAAA,IACxC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAiD;AAC/C,kCAAgB;AAChB,sBAAU,CAAC;AAGX,UAAM,kBAAkB,SAAS,IAAI,CAAC,YAAY;AAChD,YAAM,EAAE,SAAS,MAAM,MAAM,cAAc,IAAI;AAC/C,aAAO,EAAE,SAAS,MAAM,MAAM,cAAc;AAAA,IAC9C,CAAC;AAED,UAAM,WAAW,MAAM,MAAM,cAAc,iBAAiB;AAAA,MAC1D,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,gBAAgB;AAAA,SACb,cAAc,UACb,UAAU,mBAAK,WAAY,CAAC;AAAA,MAElC,MAAM,KAAK,UAAU;AAAA,QACnB;AAAA,QACA,UAAU;AAAA,QACV,QAAQ;AAAA,SACJ,MAAM,SAAS,EAAE,MAAM,IAAI,CAAC,IAC5B,cAAc,EAAE,YAAY,IAAI,CAAC,IACjC,MAAM,UAAU,IAAI,EAAE,aAAa,OAAO,IAAI,CAAC,IAChD,cAAc,OACd,cAAc,mBACd,wBAAwB,aAAa,IACpC,OAAO,mBAAK,QAAS,CAAC,EAC3B;AAAA,MACD;AAAA,IACF,CAAC;AAED,WAAO;AAAA,EACT;AAAA;AAEA,SAAS,wBAAwB,eAAoB;AAnErD;AAoEE,QAAM,oBAAmB,mBAAc,qBAAd,YAAkC,CAAC;AAC5D,MAAI,OAAO,KAAK,gBAAgB,EAAE,SAAS,GAAG;AAC5C,WAAO;AAAA,MACL,CAAC,+BAA+B,GAAG,OAAO,KAAK,gBAAgB;AAAA,IACjE;AAAA,EACF,OAAO;AACL,WAAO,CAAC;AAAA,EACV;AACF;AAMA,SAAsB,6BACpB,QACwC;AAAA;AACxC,UAAM,WAAW,MAAM,oBAAoB,MAAM;AACjD,QAAI,CAAC,SAAS,MAAM,CAAC,SAAS,MAAM;AAClC,MAAC,SAAiB,SAAS;AAAA,IAC7B,OAAO;AACL,YAAM,SAAS,MAAM,qBAAqB,oBAAoB,SAAS,IAAI,CAAC;AAC5E,MAAC,SAAiB,SAAS;AAAA,IAC7B;AACA,WAAO;AAAA,EACT;AAAA;AAMA,SAAsB,mCACpB,QAC8C;AAAA;AAC9C,UAAM,WAAW,MAAM,oBAAoB,MAAM;AACjD,QAAI,CAAC,SAAS,MAAM,CAAC,SAAS,MAAM;AAClC,MAAC,SAAiB,SAAS;AAAA,IAC7B,OAAO;AACL,YAAM,SAAS,MAAM;AAAA,QACnB,qBAAqB,oBAAoB,SAAS,IAAI,CAAC;AAAA,MACzD;AACA,MAAC,SAAiB,SAAS;AAAA,IAC7B;AAEA,WAAO;AAAA,EACT;AAAA;","names":[]}
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-PHK2K7UB.mjs";
|
|
4
4
|
import {
|
|
5
5
|
fetchAndDecodeChatCompletion
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-3WKJ25L3.mjs";
|
|
7
7
|
import {
|
|
8
8
|
__async
|
|
9
9
|
} from "./chunk-MRXNTQOX.mjs";
|
|
@@ -99,4 +99,4 @@ ${instructions}
|
|
|
99
99
|
export {
|
|
100
100
|
CopilotTask
|
|
101
101
|
};
|
|
102
|
-
//# sourceMappingURL=chunk-
|
|
102
|
+
//# sourceMappingURL=chunk-KLGA2MES.mjs.map
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
} from "./chunk-S7ZVOTYK.mjs";
|
|
7
7
|
import {
|
|
8
8
|
useChat
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-2YF2MC22.mjs";
|
|
10
10
|
import {
|
|
11
11
|
__objRest,
|
|
12
12
|
__spreadProps,
|
|
@@ -91,4 +91,4 @@ export {
|
|
|
91
91
|
useCopilotChat,
|
|
92
92
|
defaultSystemMessage
|
|
93
93
|
};
|
|
94
|
-
//# sourceMappingURL=chunk-
|
|
94
|
+
//# sourceMappingURL=chunk-UHTJLRI6.mjs.map
|
package/dist/hooks/index.js
CHANGED
|
@@ -147,7 +147,6 @@ function fetchChatCompletion(_0) {
|
|
|
147
147
|
body,
|
|
148
148
|
signal
|
|
149
149
|
}) {
|
|
150
|
-
var _a, _b;
|
|
151
150
|
temperature || (temperature = 0.5);
|
|
152
151
|
tools || (tools = []);
|
|
153
152
|
const cleanedMessages = messages.map((message) => {
|
|
@@ -163,20 +162,33 @@ function fetchChatCompletion(_0) {
|
|
|
163
162
|
model,
|
|
164
163
|
messages: cleanedMessages,
|
|
165
164
|
stream: true
|
|
166
|
-
}, tools.length ? { tools } : {}), temperature ? { temperature } : {}), tools.length != 0 ? { tool_choice: "auto" } : {}), copilotConfig.body), copilotConfig.backendOnlyProps),
|
|
165
|
+
}, tools.length ? { tools } : {}), temperature ? { temperature } : {}), tools.length != 0 ? { tool_choice: "auto" } : {}), copilotConfig.body), copilotConfig.backendOnlyProps), excludeBackendOnlyProps(copilotConfig)), body ? __spreadValues({}, body) : {})),
|
|
167
166
|
signal
|
|
168
167
|
});
|
|
169
168
|
return response;
|
|
170
169
|
});
|
|
171
170
|
}
|
|
171
|
+
function excludeBackendOnlyProps(copilotConfig) {
|
|
172
|
+
var _a;
|
|
173
|
+
const backendOnlyProps = (_a = copilotConfig.backendOnlyProps) != null ? _a : {};
|
|
174
|
+
if (Object.keys(backendOnlyProps).length > 0) {
|
|
175
|
+
return {
|
|
176
|
+
[import_shared.EXCLUDE_FROM_FORWARD_PROPS_KEYS]: Object.keys(backendOnlyProps)
|
|
177
|
+
};
|
|
178
|
+
} else {
|
|
179
|
+
return {};
|
|
180
|
+
}
|
|
181
|
+
}
|
|
172
182
|
function fetchAndDecodeChatCompletion(params) {
|
|
173
183
|
return __async(this, null, function* () {
|
|
174
184
|
const response = yield fetchChatCompletion(params);
|
|
175
185
|
if (!response.ok || !response.body) {
|
|
176
|
-
|
|
186
|
+
response.events = null;
|
|
187
|
+
} else {
|
|
188
|
+
const events = yield (0, import_shared.decodeChatCompletion)((0, import_shared.parseChatCompletion)(response.body));
|
|
189
|
+
response.events = events;
|
|
177
190
|
}
|
|
178
|
-
|
|
179
|
-
return __spreadProps(__spreadValues({}, response), { events });
|
|
191
|
+
return response;
|
|
180
192
|
});
|
|
181
193
|
}
|
|
182
194
|
|
|
@@ -186,6 +198,8 @@ function useChat(options) {
|
|
|
186
198
|
const [input, setInput] = (0, import_react2.useState)("");
|
|
187
199
|
const [isLoading, setIsLoading] = (0, import_react2.useState)(false);
|
|
188
200
|
const abortControllerRef = (0, import_react2.useRef)();
|
|
201
|
+
const threadIdRef = (0, import_react2.useRef)(null);
|
|
202
|
+
const runIdRef = (0, import_react2.useRef)(null);
|
|
189
203
|
const runChatCompletion = (messages2) => __async(this, null, function* () {
|
|
190
204
|
setIsLoading(true);
|
|
191
205
|
const newMessages = [
|
|
@@ -199,14 +213,27 @@ function useChat(options) {
|
|
|
199
213
|
const abortController = new AbortController();
|
|
200
214
|
abortControllerRef.current = abortController;
|
|
201
215
|
setMessages([...messages2, ...newMessages]);
|
|
216
|
+
const copilotConfigBody = options.copilotConfig.body || {};
|
|
217
|
+
if (threadIdRef.current) {
|
|
218
|
+
copilotConfigBody.threadId = threadIdRef.current;
|
|
219
|
+
}
|
|
220
|
+
if (runIdRef.current) {
|
|
221
|
+
copilotConfigBody.runId = runIdRef.current;
|
|
222
|
+
}
|
|
202
223
|
const messagesWithContext = [...options.initialMessages || [], ...messages2];
|
|
203
224
|
const response = yield fetchAndDecodeChatCompletion({
|
|
204
|
-
copilotConfig: options.copilotConfig,
|
|
225
|
+
copilotConfig: __spreadProps(__spreadValues({}, options.copilotConfig), { body: copilotConfigBody }),
|
|
205
226
|
messages: messagesWithContext,
|
|
206
227
|
tools: options.tools,
|
|
207
228
|
headers: options.headers,
|
|
208
229
|
signal: abortController.signal
|
|
209
230
|
});
|
|
231
|
+
if (response.headers.get("threadid")) {
|
|
232
|
+
threadIdRef.current = response.headers.get("threadid");
|
|
233
|
+
}
|
|
234
|
+
if (response.headers.get("runid")) {
|
|
235
|
+
runIdRef.current = response.headers.get("runid");
|
|
236
|
+
}
|
|
210
237
|
if (!response.events) {
|
|
211
238
|
throw new Error("Failed to fetch chat completion");
|
|
212
239
|
}
|