404 lines
12 KiB
JavaScript
404 lines
12 KiB
JavaScript
// Metro module 978 (f979).
|
|
import { ROLE_MAP, LANGCHAIN_ORIGIN } from "./Module979";
|
|
import { GEN_AI_SYSTEM_ATTRIBUTE, GEN_AI_OPERATION_NAME_ATTRIBUTE, GEN_AI_REQUEST_MODEL_ATTRIBUTE, GEN_AI_REQUEST_TEMPERATURE_ATTRIBUTE, GEN_AI_REQUEST_MAX_TOKENS_ATTRIBUTE, GEN_AI_REQUEST_TOP_P_ATTRIBUTE, GEN_AI_REQUEST_FREQUENCY_PENALTY_ATTRIBUTE, GEN_AI_REQUEST_PRESENCE_PENALTY_ATTRIBUTE, GEN_AI_REQUEST_STREAM_ATTRIBUTE, GEN_AI_REQUEST_MESSAGES_ORIGINAL_LENGTH_ATTRIBUTE, GEN_AI_REQUEST_MESSAGES_ATTRIBUTE, GEN_AI_RESPONSE_FINISH_REASONS_ATTRIBUTE, GEN_AI_RESPONSE_TOOL_CALLS_ATTRIBUTE, GEN_AI_RESPONSE_TEXT_ATTRIBUTE, GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE, GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE, GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE, GEN_AI_USAGE_CACHE_CREATION_INPUT_TOKENS_ATTRIBUTE, GEN_AI_USAGE_CACHE_READ_INPUT_TOKENS_ATTRIBUTE, GEN_AI_RESPONSE_MODEL_ATTRIBUTE, GEN_AI_RESPONSE_ID_ATTRIBUTE, GEN_AI_RESPONSE_STOP_REASON_ATTRIBUTE } from "./Module958";
|
|
import { SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN } from "./Module839";
|
|
import { truncateGenAiMessages } from "./truncateTextByBytes";
|
|
import { HermesBuiltin } from "../_hermes/prelude";
|
|
let setIfDefined, setNumberIfDefined, baseRequestAttributes, $mk67434 = function() {
|
|
return (a0) => {
|
|
const _getType = a0._getType;
|
|
if (typeof _getType === "function") {
|
|
const r141 = _getType.call(a0).toLowerCase();
|
|
let role5 = ROLE_MAP[r141];
|
|
if (role5 == null) {
|
|
role5 = r141;
|
|
}
|
|
return {
|
|
role: role5,
|
|
content: asString(a0.content)
|
|
};
|
|
}
|
|
const name = a0.constructor?.name;
|
|
if (name) {
|
|
const r104 = name.includes("System");
|
|
let r105 = "system";
|
|
if (!r104) {
|
|
const r108 = name.includes("Human");
|
|
let r109 = "user";
|
|
let r110 = "user";
|
|
if (!r108) {
|
|
const r113 = name.includes("AI");
|
|
let r115 = "assistant";
|
|
if (!r113) {
|
|
const r118 = name.includes("Assistant");
|
|
r115 = "assistant";
|
|
if (!r118) {
|
|
const r121 = name.includes("Function");
|
|
let r122 = "function";
|
|
if (!r121) {
|
|
if (name.includes("Tool")) {
|
|
r109 = "tool";
|
|
}
|
|
r122 = r109;
|
|
}
|
|
r115 = r122;
|
|
}
|
|
}
|
|
r110 = r115;
|
|
}
|
|
r105 = r110;
|
|
}
|
|
const r127 = r105.toLowerCase();
|
|
let role4 = ROLE_MAP[r127];
|
|
if (role4 == null) {
|
|
role4 = r127;
|
|
}
|
|
return {
|
|
role: role4,
|
|
content: asString(a0.content)
|
|
};
|
|
}
|
|
if (a0.type) {
|
|
const r91 = String(a0.type).toLowerCase().toLowerCase();
|
|
let role3 = ROLE_MAP[r91];
|
|
if (role3 == null) {
|
|
role3 = r91;
|
|
}
|
|
return {
|
|
role: role3,
|
|
content: asString(a0.content)
|
|
};
|
|
}
|
|
if (a0.role) {
|
|
const r73 = String(a0.role).toLowerCase();
|
|
let role2 = ROLE_MAP[r73];
|
|
if (role2 == null) {
|
|
role2 = r73;
|
|
}
|
|
return {
|
|
role: role2,
|
|
content: asString(a0.content)
|
|
};
|
|
}
|
|
if (a0.lc === 1 && a0.kwargs) {
|
|
const id = a0.id;
|
|
const r17 = Array.isArray(id) ? id.length > 0 ? id[id.length - 1] : "" : "";
|
|
let r13 = "user";
|
|
let r34 = "user";
|
|
if (typeof r17 === "string") {
|
|
const r37 = r17.includes("System");
|
|
let r38 = "system";
|
|
if (!r37) {
|
|
const r40 = r17.includes("Human");
|
|
let r41 = "user";
|
|
if (!r40) {
|
|
const r43 = r17.includes("AI");
|
|
let r44 = "assistant";
|
|
if (!r43) {
|
|
const r46 = r17.includes("Assistant");
|
|
r44 = "assistant";
|
|
if (!r46) {
|
|
const r49 = r17.includes("Function");
|
|
let r50 = "function";
|
|
if (!r49) {
|
|
if (r17.includes("Tool")) {
|
|
r13 = "tool";
|
|
}
|
|
r50 = r13;
|
|
}
|
|
r44 = r50;
|
|
}
|
|
}
|
|
r41 = r44;
|
|
}
|
|
r38 = r41;
|
|
}
|
|
r34 = r38;
|
|
}
|
|
const r55 = r34.toLowerCase();
|
|
let role = ROLE_MAP[r55];
|
|
if (role == null) {
|
|
role = r55;
|
|
}
|
|
return {
|
|
role,
|
|
content: asString(a0.kwargs?.content)
|
|
};
|
|
}
|
|
return {
|
|
role: "user",
|
|
content: asString(a0.content)
|
|
};
|
|
};
|
|
};
|
|
const asString = function asString(content) {
|
|
let r4;
|
|
if (typeof content === "string") {
|
|
return content;
|
|
}
|
|
try {
|
|
r4 = JSON.stringify(content);
|
|
} catch ($e) {
|
|
return String(content);
|
|
}
|
|
return r4;
|
|
};
|
|
baseRequestAttributes = function baseRequestAttributes(ls_provider, a1, a2, a3, a4, a5) {
|
|
const r8 = ls_provider == null ? "langchain" : ls_provider;
|
|
const r20 = {};
|
|
r20[GEN_AI_SYSTEM_ATTRIBUTE] = asString(r8);
|
|
r20[GEN_AI_OPERATION_NAME_ATTRIBUTE] = a2;
|
|
r20[GEN_AI_REQUEST_MODEL_ATTRIBUTE] = asString(a1);
|
|
r20[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN] = LANGCHAIN_ORIGIN;
|
|
const r36 = "kwargs" in a3 ? a3.kwargs : void 0;
|
|
let r15 = a4?.temperature;
|
|
if (r15 == null) {
|
|
r15 = a5?.ls_temperature;
|
|
}
|
|
if (r15 == null) {
|
|
r15 = r36?.temperature;
|
|
}
|
|
const r47 = {};
|
|
const r50 = Number(r15);
|
|
if (!Number.isNaN(r50)) {
|
|
r47[GEN_AI_REQUEST_TEMPERATURE_ATTRIBUTE] = r50;
|
|
}
|
|
let r54 = a4?.max_tokens;
|
|
if (r54 == null) {
|
|
r54 = a5?.ls_max_tokens;
|
|
}
|
|
if (r54 == null) {
|
|
r54 = r36?.max_tokens;
|
|
}
|
|
const r65 = Number(r54);
|
|
if (!Number.isNaN(r65)) {
|
|
r47[GEN_AI_REQUEST_MAX_TOKENS_ATTRIBUTE] = r65;
|
|
}
|
|
let r70 = a4?.top_p;
|
|
if (r70 == null) {
|
|
r70 = r36?.top_p;
|
|
}
|
|
const r79 = Number(r70);
|
|
if (!Number.isNaN(r79)) {
|
|
r47[GEN_AI_REQUEST_TOP_P_ATTRIBUTE] = r79;
|
|
}
|
|
const r91 = Number(a4?.frequency_penalty);
|
|
if (!Number.isNaN(r91)) {
|
|
r47[GEN_AI_REQUEST_FREQUENCY_PENALTY_ATTRIBUTE] = r91;
|
|
}
|
|
const r103 = Number(a4?.presence_penalty);
|
|
if (!Number.isNaN(r103)) {
|
|
r47[GEN_AI_REQUEST_PRESENCE_PENALTY_ATTRIBUTE] = r103;
|
|
}
|
|
if (a4 ? "stream" in a4 : a4) {
|
|
const r115 = Boolean(a4.stream);
|
|
if (r115 != null) {
|
|
r47[GEN_AI_REQUEST_STREAM_ATTRIBUTE] = r115;
|
|
}
|
|
}
|
|
HermesBuiltin.copyDataProperties(r20, r47);
|
|
return r20;
|
|
};
|
|
Object.defineProperty(exports, Symbol.toStringTag, {
|
|
value: "Module"
|
|
});
|
|
setIfDefined = (a0, a1, a2) => {
|
|
if (a2 != null) {
|
|
a0[a1] = a2;
|
|
}
|
|
};
|
|
setNumberIfDefined = (a0, a1, a2) => {};
|
|
export function extractChatModelRequestAttributes(a0, a1, a2, a3, a4) {
|
|
let r10 = a4?.ls_provider;
|
|
if (r10 == null) {
|
|
const id = a0.id;
|
|
r10 = id == null ? void 0 : id[2];
|
|
}
|
|
let r7 = a3?.model;
|
|
if (r7 == null) {
|
|
r7 = a4?.ls_model_name;
|
|
}
|
|
if (r7 == null) {
|
|
r7 = "unknown";
|
|
}
|
|
const r25 = baseRequestAttributes(r10, r7, "chat", a0, a3, a4);
|
|
if (a2 && Array.isArray(a1) && a1.length > 0) {
|
|
const r36 = a1.flat().map($mk67434());
|
|
const length = r36.length;
|
|
if (length != null) {
|
|
r25[GEN_AI_REQUEST_MESSAGES_ORIGINAL_LENGTH_ATTRIBUTE] = length;
|
|
}
|
|
const r54 = asString(truncateGenAiMessages(r36));
|
|
if (r54 != null) {
|
|
r25[GEN_AI_REQUEST_MESSAGES_ATTRIBUTE] = r54;
|
|
}
|
|
}
|
|
return r25;
|
|
}
|
|
export function extractLLMRequestAttributes(a0, a1, a2, a3, a4) {
|
|
const ls_provider = a4?.ls_provider;
|
|
let r8 = a3?.model;
|
|
if (r8 == null) {
|
|
r8 = a4?.ls_model_name;
|
|
}
|
|
if (r8 == null) {
|
|
r8 = "unknown";
|
|
}
|
|
const r22 = baseRequestAttributes(ls_provider, r8, "pipeline", a0, a3, a4);
|
|
if (a2 && Array.isArray(a1) && a1.length > 0) {
|
|
const length = a1.length;
|
|
if (length != null) {
|
|
r22[GEN_AI_REQUEST_MESSAGES_ORIGINAL_LENGTH_ATTRIBUTE] = length;
|
|
}
|
|
const r44 = asString(a1.map((item) => ({
|
|
role: "user",
|
|
content: item
|
|
})));
|
|
if (r44 != null) {
|
|
r22[GEN_AI_REQUEST_MESSAGES_ATTRIBUTE] = r44;
|
|
}
|
|
}
|
|
return r22;
|
|
}
|
|
export function extractLlmResponseAttributes(a0, a1) {
|
|
if (a0) {
|
|
const r4 = {};
|
|
if (Array.isArray(a0.generations)) {
|
|
const r11 = a0.generations.flat().map((item) => item.generationInfo?.finish_reason ? item.generationInfo.finish_reason : item.generation_info?.finish_reason ? item.generation_info.finish_reason : null).filter((item) => typeof item === "string");
|
|
if (r11.length > 0) {
|
|
const r37 = asString(r11);
|
|
if (r37 != null) {
|
|
r4[GEN_AI_RESPONSE_FINISH_REASONS_ATTRIBUTE] = r37;
|
|
}
|
|
}
|
|
(function addToolCallsAttributes(a0, a1) {
|
|
const r5 = [];
|
|
for (const item of a0.flat()) {
|
|
const content = item.message?.content;
|
|
if (Array.isArray(content)) {
|
|
for (const item2 of content) {
|
|
if (item2.type === "tool_use") {
|
|
r5.push(item2);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (r5.length > 0) {
|
|
setIfDefined(a1, GEN_AI_RESPONSE_TOOL_CALLS_ATTRIBUTE, asString(r5));
|
|
}
|
|
})(a0.generations, r4);
|
|
if (a1) {
|
|
const r51 = a0.generations.flat().map((item) => {
|
|
let text = item.text;
|
|
if (text == null) {
|
|
text = item.message?.content;
|
|
}
|
|
return text;
|
|
}).filter((item) => typeof item === "string");
|
|
if (r51.length > 0) {
|
|
const r60 = asString(r51);
|
|
if (r60 != null) {
|
|
r4[GEN_AI_RESPONSE_TEXT_ATTRIBUTE] = r60;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
const llmOutput = a0.llmOutput;
|
|
if (llmOutput) {
|
|
const { tokenUsage, usage } = llmOutput;
|
|
if (tokenUsage) {
|
|
const r149 = Number(tokenUsage.promptTokens);
|
|
if (!Number.isNaN(r149)) {
|
|
r4[GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE] = r149;
|
|
}
|
|
const r160 = Number(tokenUsage.completionTokens);
|
|
if (!Number.isNaN(r160)) {
|
|
r4[GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE] = r160;
|
|
}
|
|
const r171 = Number(tokenUsage.totalTokens);
|
|
if (!Number.isNaN(r171)) {
|
|
r4[GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE] = r171;
|
|
}
|
|
} else if (usage) {
|
|
const r74 = Number(usage.input_tokens);
|
|
if (!Number.isNaN(r74)) {
|
|
r4[GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE] = r74;
|
|
}
|
|
const r84 = Number(usage.output_tokens);
|
|
if (!Number.isNaN(r84)) {
|
|
r4[GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE] = r84;
|
|
}
|
|
const r90 = Number(usage.input_tokens);
|
|
const r93 = Number(usage.output_tokens);
|
|
const r103 = (Number.isNaN(r90) ? 0 : r90) + (Number.isNaN(r93) ? 0 : r93);
|
|
if (r103 > 0) {
|
|
const r110 = Number(r103);
|
|
if (!Number.isNaN(r110)) {
|
|
r4[GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE] = r110;
|
|
}
|
|
}
|
|
if (usage.cache_creation_input_tokens !== void 0) {
|
|
const r122 = Number(usage.cache_creation_input_tokens);
|
|
if (!Number.isNaN(r122)) {
|
|
r4[GEN_AI_USAGE_CACHE_CREATION_INPUT_TOKENS_ATTRIBUTE] = r122;
|
|
}
|
|
}
|
|
if (usage.cache_read_input_tokens !== void 0) {
|
|
const r134 = Number(usage.cache_read_input_tokens);
|
|
if (!Number.isNaN(r134)) {
|
|
r4[GEN_AI_USAGE_CACHE_READ_INPUT_TOKENS_ATTRIBUTE] = r134;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
const { llmOutput: llmOutput2, generations } = a0;
|
|
const r3 = generations == null;
|
|
let r179 = void 0;
|
|
if (!r3) {
|
|
const r180 = generations[0];
|
|
r179 = r180 == null ? void 0 : r180[0];
|
|
}
|
|
const message = r179?.message;
|
|
let r185 = llmOutput2?.model_name;
|
|
if (r185 == null) {
|
|
r185 = llmOutput2?.model;
|
|
}
|
|
if (r185 == null) {
|
|
r185 = message == null ? void 0 : message.response_metadata?.model_name;
|
|
}
|
|
if (r185) {
|
|
if (r185 != null) {
|
|
r4[GEN_AI_RESPONSE_MODEL_ATTRIBUTE] = r185;
|
|
}
|
|
}
|
|
let r201 = llmOutput2?.id;
|
|
if (r201 == null) {
|
|
r201 = message?.id;
|
|
}
|
|
if (r201) {
|
|
if (r201 != null) {
|
|
r4[GEN_AI_RESPONSE_ID_ATTRIBUTE] = r201;
|
|
}
|
|
}
|
|
let r213 = llmOutput2?.stop_reason;
|
|
if (r213 == null) {
|
|
r213 = message == null ? void 0 : message.response_metadata?.finish_reason;
|
|
}
|
|
if (r213) {
|
|
const r225 = asString(r213);
|
|
if (r225 != null) {
|
|
r4[GEN_AI_RESPONSE_STOP_REASON_ATTRIBUTE] = r225;
|
|
}
|
|
}
|
|
return r4;
|
|
}
|
|
}
|
|
export function getInvocationParams(a0) {
|
|
if (a0 && !Array.isArray(a0)) {
|
|
return a0.invocation_params;
|
|
}
|
|
}
|
|
export function normalizeLangChainMessages(a0) {
|
|
return a0.map($mk67434());
|
|
}
|