@countly/ai-sdk-cohere 0.0.3 → 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.
- package/README.md +54 -0
- package/dist/adapter.d.ts.map +1 -1
- package/dist/adapter.js +8 -2
- package/dist/adapter.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -62,6 +62,60 @@ const response = await cohere.chat({
|
|
|
62
62
|
- Error tracking with categorization
|
|
63
63
|
- APM traces, per-user aggregation
|
|
64
64
|
|
|
65
|
+
## Caller-supplied prompt_id
|
|
66
|
+
|
|
67
|
+
By default every tracked call is stamped with an auto-generated `prompt_id`. If your app already owns a request/trace identifier, supply it via the `getPromptId` config callback and the adapter will use it verbatim (falling back to the generated id whenever the callback returns `undefined`):
|
|
68
|
+
|
|
69
|
+
```typescript
|
|
70
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
71
|
+
|
|
72
|
+
const requestStore = new AsyncLocalStorage<{ requestId: string }>();
|
|
73
|
+
|
|
74
|
+
const cohere = observeCohere(new CohereClientV2({ token: "..." }), {
|
|
75
|
+
appKey: "YOUR_APP_KEY",
|
|
76
|
+
url: "https://your-countly-server.com",
|
|
77
|
+
getPromptId: () => requestStore.getStore()?.requestId,
|
|
78
|
+
});
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
The resolved `prompt_id` is the same value stamped on the `[CLY]_llm_interaction` event, so a `prompt_id` you already track elsewhere becomes the join key for feedback correlation — pass it straight to `feedback.track({ prompt_id })` without waiting for the `onPrompt` callback.
|
|
82
|
+
|
|
83
|
+
## Feedback
|
|
84
|
+
|
|
85
|
+
User feedback (thumbs up/down, ratings, comments) is not auto-collected — wire it from your UI. Capture the `prompt_id` of each tracked interaction via the `onPrompt` callback, then record feedback against it with `createFeedbackTracker` (re-exported from this package, so no extra install is needed):
|
|
86
|
+
|
|
87
|
+
```typescript
|
|
88
|
+
import { CohereClientV2 } from "cohere-ai";
|
|
89
|
+
import { observeCohere, createFeedbackTracker, type PromptInfo } from "@countly/ai-sdk-cohere";
|
|
90
|
+
|
|
91
|
+
const countly = { appKey: "YOUR_APP_KEY", url: "https://your-countly-server.com" };
|
|
92
|
+
|
|
93
|
+
let lastPrompt: PromptInfo | undefined;
|
|
94
|
+
const cohere = observeCohere(new CohereClientV2({ token: process.env.CO_API_KEY }), {
|
|
95
|
+
...countly,
|
|
96
|
+
onPrompt: (info) => { lastPrompt = info; }, // fires after every tracked call
|
|
97
|
+
});
|
|
98
|
+
|
|
99
|
+
const feedback = createFeedbackTracker(countly, { sdk_adapter: "cohere" });
|
|
100
|
+
|
|
101
|
+
const response = await cohere.chat({
|
|
102
|
+
model: "command-r-plus",
|
|
103
|
+
messages: [{ role: "user", content: "Explain quantum computing" }],
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
// ...later, when the user rates the answer:
|
|
107
|
+
feedback.track({
|
|
108
|
+
prompt_id: lastPrompt!.prompt_id,
|
|
109
|
+
rating: "thumbs_up", // or "thumbs_down", or any custom string
|
|
110
|
+
score: 0.9, // optional 0-1 numeric score
|
|
111
|
+
category: "helpful", // optional: hallucination, irrelevant, harmful, ...
|
|
112
|
+
comment: "Great answer", // optional free-form text
|
|
113
|
+
deviceId: user.id, // attribute to the same user as the interaction
|
|
114
|
+
});
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
Each `track()` call emits a `[CLY]_llm_interaction_feedback` event whose `prompt_id` links back to the `[CLY]_llm_interaction` event — powering prompt → feedback funnels and per-model satisfaction breakdowns in Countly. In a real app, store `prompt_id` alongside the rendered message (or return it to your client) and read it back when the user rates the answer. Feedback is batched like interaction events; call `feedback.flush()` to send immediately, or `feedback.shutdown()` on process exit.
|
|
118
|
+
|
|
65
119
|
## Full documentation
|
|
66
120
|
|
|
67
121
|
See the [Countly AI SDK repository](https://github.com/Countly/countly-ai-sdk) for the unified data model, observability levels, cost calculation, privacy controls, and Countly plugin integration (Drill, Funnels, Cohorts, APM, Crash Analytics).
|
package/dist/adapter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,eAAe,EAKrB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,oBAAqB,SAAQ,eAAe;CAAG;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,eAAe,EAKrB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,oBAAqB,SAAQ,eAAe;CAAG;AAoMhE,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,eAAe,GAAG,CAAC,CAqBvE"}
|
package/dist/adapter.js
CHANGED
|
@@ -27,6 +27,12 @@ function extractFromResponse(response, requestParams, latency) {
|
|
|
27
27
|
const tokenInput = tokens?.inputTokens ?? 0;
|
|
28
28
|
const tokenOutput = tokens?.outputTokens ?? 0;
|
|
29
29
|
const tokenTotal = tokenInput + tokenOutput;
|
|
30
|
+
// Cache-read tokens — "prompt tokens that hit the inference cache".
|
|
31
|
+
// V2: response.usage.cachedTokens | V1: response.meta.cachedTokens
|
|
32
|
+
// These are a SUBSET of inputTokens (billed at a discount), so no fold is
|
|
33
|
+
// needed to satisfy the cost contract. Cohere has no cache-CREATION concept,
|
|
34
|
+
// so there is no usage_cache_write.
|
|
35
|
+
const tokenCacheRead = usage?.cachedTokens ?? response?.meta?.cachedTokens;
|
|
30
36
|
const finishReason = response?.finishReason;
|
|
31
37
|
// Extract tool calls — V2: response.message.toolCalls | V1: response.toolCalls
|
|
32
38
|
const tools = [];
|
|
@@ -91,6 +97,7 @@ function extractFromResponse(response, requestParams, latency) {
|
|
|
91
97
|
usage_input: tokenInput,
|
|
92
98
|
usage_output: tokenOutput,
|
|
93
99
|
usage_total: tokenTotal,
|
|
100
|
+
...(tokenCacheRead != null && { usage_cache_read: tokenCacheRead }),
|
|
94
101
|
...(finishReason && { finish_reason: finishReason }),
|
|
95
102
|
...(tools.length > 0 && { tools }),
|
|
96
103
|
...(textOutput && { text_output: textOutput }),
|
|
@@ -108,7 +115,7 @@ function extractFromResponse(response, requestParams, latency) {
|
|
|
108
115
|
function createChatProxy(chatFn, config, transport, defaultModel) {
|
|
109
116
|
return async function (...args) {
|
|
110
117
|
const requestParams = args[0];
|
|
111
|
-
const promptId = generatePromptId();
|
|
118
|
+
const promptId = config.getPromptId?.() ?? generatePromptId();
|
|
112
119
|
const eventContext = { prompt_id: promptId, sdk_adapter: "cohere" };
|
|
113
120
|
const start = performance.now();
|
|
114
121
|
const textInput = extractTextInput(requestParams);
|
|
@@ -122,7 +129,6 @@ function createChatProxy(chatFn, config, transport, defaultModel) {
|
|
|
122
129
|
const events = buildAllEvents(raw, config, eventContext);
|
|
123
130
|
transport.enqueue(events);
|
|
124
131
|
transport.reportTrace(raw, eventContext);
|
|
125
|
-
transport.reportUserData(raw);
|
|
126
132
|
return response;
|
|
127
133
|
}
|
|
128
134
|
catch (err) {
|
package/dist/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export { observeCohere } from "./adapter";
|
|
2
2
|
export type { CountlyCohereOptions } from "./adapter";
|
|
3
|
+
export { createFeedbackTracker } from "@countly/ai-sdk-core";
|
|
4
|
+
export type { FeedbackInput, FeedbackTracker, PromptInfo } from "@countly/ai-sdk-core";
|
|
3
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,YAAY,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAMtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,7 @@
|
|
|
1
1
|
export { observeCohere } from "./adapter";
|
|
2
|
+
// Feedback pipeline — re-exported from core so user feedback (thumbs up/down,
|
|
3
|
+
// ratings, comments) can be wired without importing @countly/ai-sdk-core
|
|
4
|
+
// directly. Correlate via the `onPrompt` config callback, which exposes the
|
|
5
|
+
// `prompt_id` stamped on every `[CLY]_llm_interaction` event.
|
|
6
|
+
export { createFeedbackTracker } from "@countly/ai-sdk-core";
|
|
2
7
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG1C,8EAA8E;AAC9E,yEAAyE;AACzE,4EAA4E;AAC5E,8DAA8D;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@countly/ai-sdk-cohere",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"description": "Countly AI observability adapter for Cohere SDK",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"access": "public"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@countly/ai-sdk-core": "0.0.
|
|
19
|
+
"@countly/ai-sdk-core": "0.0.4"
|
|
20
20
|
},
|
|
21
21
|
"peerDependencies": {
|
|
22
22
|
"cohere-ai": ">=7.0.0"
|