Commit Graph

3198 Commits

Author SHA1 Message Date
KernelDeimos
60eef2fc67 fix: buffer incomplete JSON objects from AI stream
- simplify ndjson stream to get complete lines instead of chunks
- add buffering for incomplete lines
2025-01-30 15:21:05 -05:00
KernelDeimos
af3d732fc4 dev: async await for puter-exec 2025-01-30 13:37:15 -05:00
KernelDeimos
d0eca6dafb Revert "dev: remove redundant message adaption from claude"
This reverts commit 0c42613ff0.
2025-01-30 12:23:27 -05:00
KernelDeimos
760eb55b69 Revert "fix: mistake in 0c42613"
This reverts commit 8ffd0004b3.
2025-01-30 12:23:06 -05:00
KernelDeimos
8ffd0004b3 fix: mistake in 0c42613 2025-01-30 12:19:07 -05:00
KernelDeimos
05ced4e625 Revert "dev: remove max_tokens from Claude"
This reverts commit 3bce60893e.
2025-01-30 12:18:26 -05:00
KernelDeimos
3bce60893e dev: remove max_tokens from Claude 2025-01-30 12:09:35 -05:00
KernelDeimos
0c42613ff0 dev: remove redundant message adaption from claude 2025-01-30 10:11:52 -05:00
KernelDeimos
babe9f8ede dev: remove now-redundant token count logic from openai service 2025-01-29 16:58:30 -05:00
KernelDeimos
7151723894 dev: use message normalization and clean up openai service 2025-01-29 16:45:15 -05:00
KernelDeimos
0009ededfa dev: implement generic extract_text for ai messages 2025-01-29 16:08:30 -05:00
KernelDeimos
e9279ffb36 dev: implement message normalization 2025-01-29 15:28:14 -05:00
KernelDeimos
e6ad54be19 dev: puterjs exec module (2) 2025-01-29 13:58:21 -05:00
KernelDeimos
cbe02a4489 dev: puterjs exec module 2025-01-29 13:57:50 -05:00
KernelDeimos
77d6bb2d8c dev: always select highest version of the specified language 2025-01-29 10:31:58 -05:00
KernelDeimos
dcd47bc4cf fix: fix microcents to USD conversion in AIChatService
This only affects a value sent to TrackSpendingService. Cost
calculations related to user's quotas / billing remain unaffected.
2025-01-28 16:45:48 -05:00
KernelDeimos
913c1b7836 test: add unit test for TimeWindow
TimeWindow is used by TrackSpendingService for two purposes:
- tracking cost within a time window
- preventing duplicate alarms within a cooldown period

It is important to test this to ensure alarms related to AI costs are
accurate.
2025-01-28 16:16:00 -05:00
KernelDeimos
1dad2e8716 dev: allow specifying runtime version 2025-01-28 14:25:45 -05:00
KernelDeimos
c852a287e8 dev: push exec submission updates to client 2025-01-28 13:41:26 -05:00
KernelDeimos
4005e9667c dev: implement custom backoff strategy for judge0 2025-01-28 13:27:26 -05:00
KernelDeimos
5718071c08 dev: add judge0 exec and polling 2025-01-28 12:55:54 -05:00
KernelDeimos
0fac03a05a fix: claude duplicate messages in stream 2025-01-28 11:27:47 -05:00
KernelDeimos
c96d3b546c dev: update selfhosted default modules 2025-01-28 10:37:39 -05:00
KernelDeimos
3451308e48 dev: tweak supported languages list 2025-01-28 10:20:31 -05:00
KernelDeimos
5b04d1afe1 dev: increase alarm threshold for ai use 2025-01-28 00:35:40 -05:00
KernelDeimos
97f86e564f dev: oh my Claude
Sometimes tool use requests are streamed as JSON, but sometimes they're
streamed as an empty string (causing the JSON parser to error). Had they
not streamed anything we actually would've responded correctly, but
what they stream implies "this empty string is the JSON input" which is
incorrect. Oh well.
2025-01-27 21:32:50 -05:00
KernelDeimos
3f99d975c0 dev: initial work on judge0 implementation 2025-01-27 16:19:16 -05:00
KernelDeimos
81ee52b00f dev: add puterexec module 2025-01-27 15:38:29 -05:00
KernelDeimos
4d826c0602 dev: process language information from judge0 2025-01-27 14:50:40 -05:00
KernelDeimos
ecc89678d1 doc: add examples of streaming tool use 2025-01-27 14:13:01 -05:00
KernelDeimos
5ad53e061a dev: get streaming tool use to work in Claude 2025-01-27 13:53:56 -05:00
KernelDeimos
d00061ae2f dev: improve accuracy of TrackSpendingService 2025-01-27 11:36:54 -05:00
jelveh
52c1adb7eb Update globals.js 2025-01-26 17:05:43 -08:00
jelveh
bb348e4bd5 Update UIWindowMyWebsites.js 2025-01-26 11:20:07 -08:00
KernelDeimos
6083e3ac52 fix: skip request-count usage check via AIChatService 2025-01-24 17:58:04 -05:00
KernelDeimos
db9597a7b5 doc: add example function calling requests 2025-01-24 16:35:46 -05:00
KernelDeimos
aae18e6878 dev: support POST requests in puter.http 2025-01-24 15:38:19 -05:00
KernelDeimos
c7f3e0b937 fix: remove log from InternetModule 2025-01-23 21:27:14 -05:00
KernelDeimos
1fde01aa04 dev: enable tool use for Claude 2025-01-23 20:21:14 -05:00
KernelDeimos
e9f6266062 dev: add deepseek AI to backend 2025-01-23 20:07:41 -05:00
KernelDeimos
40030ebc94 dev: enable tool-use in Claude 2025-01-23 16:46:13 -05:00
KernelDeimos
54a104276b dev: add tools normalization/converting 2025-01-23 16:15:32 -05:00
KernelDeimos
bcdec32ba2 doc: log some AI responses 2025-01-23 15:20:31 -05:00
KernelDeimos
06452f5283 fix: small workaround for duplicate close 2025-01-23 14:58:23 -05:00
KernelDeimos
36dc9664ad fix: race condition and buffer issue in puter.http
The call to sock.write() wasn't waiting for the 'open' event, which
worked fine over non-TLS sockets by chance. Also, responses with only
a single WISP packet were resulting in buffered response data not
being sent to the caller.
2025-01-23 14:14:13 -05:00
KernelDeimos
3f5b34cd34 fix: missing some buffer contents in no-keepalive 2025-01-23 13:43:21 -05:00
KernelDeimos
ee136f4168 dev: add extra safeguards for system user 2025-01-23 11:46:36 -05:00
KernelDeimos
7909cae76e dev: check 'invalid_request_error' hint from openai 2025-01-23 11:46:36 -05:00
jelveh
6f7ab2ab17 Update RecommendedAppsService.js 2025-01-22 21:38:07 -08:00
jelveh
bfdf815f61 Update RecommendedAppsService.js 2025-01-22 21:34:27 -08:00