decord/source/949_extractModel.js
2026-07-24 07:16:23 +00:00

340 lines
13 KiB
JavaScript

// Module ID: 949
// Function ID: 10283
// Name: extractModel
// Dependencies: [5, 65, 77, 934, 950, 936, 816, 951, 937, 842, 952, 817, 845, 843, 825]
// Exports: instrumentGoogleGenAIClient
// Module 949 (extractModel)
import asyncGeneratorStep from "getFinalOperationName";
import _toConsumableArray from "_toConsumableArray";
import _defineProperty from "_defineProperty";
function extractModel(model, model2) {
if ("model" in model) {
if ("string" === typeof model.model) {
return model.model;
}
}
if (model2) {
if ("object" === typeof model2) {
if ("model" in model2) {
if ("string" === typeof model2.model) {
return model2.model;
}
}
if ("modelVersion" in model2) {
if ("string" === typeof model2.modelVersion) {
return model2.modelVersion;
}
}
}
}
return "unknown";
}
function extractRequestAttributes(closure_1, config) {
let obj = require(936) /* getFinalOperationName */;
const tmp = _defineProperty({}, require(934).GEN_AI_SYSTEM_ATTRIBUTE, require(950).GOOGLE_GENAI_SYSTEM_NAME);
const tmp3 = _defineProperty(_defineProperty(_defineProperty({}, require(934).GEN_AI_SYSTEM_ATTRIBUTE, require(950).GOOGLE_GENAI_SYSTEM_NAME), require(934).GEN_AI_OPERATION_NAME_ATTRIBUTE, obj.getFinalOperationName(closure_1)), require(816).SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, "auto.ai.google_genai");
const GEN_AI_REQUEST_MODEL_ATTRIBUTE = require(934).GEN_AI_REQUEST_MODEL_ATTRIBUTE;
if (config) {
tmp3[GEN_AI_REQUEST_MODEL_ATTRIBUTE] = tmp4(config, arg2);
if ("config" in config) {
if ("object" === typeof config.config) {
if (config.config) {
config = config.config;
obj = {};
let tmp6 = "temperature" in config;
if (tmp6) {
tmp6 = "number" === typeof config.temperature;
}
if (tmp6) {
obj[require(934).GEN_AI_REQUEST_TEMPERATURE_ATTRIBUTE] = config.temperature;
}
let tmp9 = "topP" in config;
if (tmp9) {
tmp9 = "number" === typeof config.topP;
}
if (tmp9) {
obj[require(934).GEN_AI_REQUEST_TOP_P_ATTRIBUTE] = config.topP;
}
let tmp12 = "topK" in config;
if (tmp12) {
tmp12 = "number" === typeof config.topK;
}
if (tmp12) {
obj[require(934).GEN_AI_REQUEST_TOP_K_ATTRIBUTE] = config.topK;
}
let tmp15 = "maxOutputTokens" in config;
if (tmp15) {
tmp15 = "number" === typeof config.maxOutputTokens;
}
if (tmp15) {
obj[require(934).GEN_AI_REQUEST_MAX_TOKENS_ATTRIBUTE] = config.maxOutputTokens;
}
let tmp18 = "frequencyPenalty" in config;
if (tmp18) {
tmp18 = "number" === typeof config.frequencyPenalty;
}
if (tmp18) {
obj[require(934).GEN_AI_REQUEST_FREQUENCY_PENALTY_ATTRIBUTE] = config.frequencyPenalty;
}
let tmp21 = "presencePenalty" in config;
if (tmp21) {
tmp21 = "number" === typeof config.presencePenalty;
}
if (tmp21) {
obj[require(934).GEN_AI_REQUEST_PRESENCE_PENALTY_ATTRIBUTE] = config.presencePenalty;
}
const merged = Object.assign(tmp3, obj);
if ("tools" in config) {
const _Array = Array;
if (Array.isArray(config.tools)) {
const tools = config.tools;
const _JSON = JSON;
tmp3[require(934).GEN_AI_REQUEST_AVAILABLE_TOOLS_ATTRIBUTE] = JSON.stringify(tools.flatMap((functionDeclarations) => functionDeclarations.functionDeclarations));
const flatMapResult = tools.flatMap((functionDeclarations) => functionDeclarations.functionDeclarations);
}
}
}
}
}
} else {
tmp3[GEN_AI_REQUEST_MODEL_ATTRIBUTE] = tmp4({}, arg2);
}
return tmp3;
}
function addPrivateRequestAttributes(setAttributes, config) {
const items = [];
let systemInstruction = "config" in config && config.config;
if (systemInstruction) {
systemInstruction = "object" === typeof config.config;
}
if (systemInstruction) {
systemInstruction = "systemInstruction" in config.config;
}
if (systemInstruction) {
systemInstruction = config.config.systemInstruction;
}
if (systemInstruction) {
const push = items.push;
push.apply(items, _toConsumableArray(require(951) /* contentUnionToMessages */.contentUnionToMessages(config.config.systemInstruction, "system")));
const obj = require(951) /* contentUnionToMessages */;
}
if ("history" in config) {
const push2 = items.push;
push2.apply(items, _toConsumableArray(require(951) /* contentUnionToMessages */.contentUnionToMessages(config.history, "user")));
const obj2 = require(951) /* contentUnionToMessages */;
}
if ("contents" in config) {
const push3 = items.push;
push3.apply(items, _toConsumableArray(require(951) /* contentUnionToMessages */.contentUnionToMessages(config.contents, "user")));
const obj3 = require(951) /* contentUnionToMessages */;
}
if ("message" in config) {
const push4 = items.push;
push4.apply(items, _toConsumableArray(require(951) /* contentUnionToMessages */.contentUnionToMessages(config.message, "user")));
const obj4 = require(951) /* contentUnionToMessages */;
}
if (tmp17) {
const _JSON = JSON;
const tmp21 = _defineProperty({}, require(934).GEN_AI_REQUEST_MESSAGES_ORIGINAL_LENGTH_ATTRIBUTE, items.length);
setAttributes.setAttributes(_defineProperty(tmp21, require(934).GEN_AI_REQUEST_MESSAGES_ATTRIBUTE, JSON.stringify(require(937) /* truncateTextByBytes */.truncateGenAiMessages(items))));
const obj5 = require(937) /* truncateTextByBytes */;
}
}
function instrumentMethod(arg0, arg1, arg2, arg3) {
const _require = arg1;
let dependencyMap = arg2;
let closure_2 = arg3;
let closure_3 = arg1 === _require(950).CHATS_CREATE_METHOD;
const proxy = new Proxy(arg0, {
apply(closure_1) {
let callback = closure_1;
const dependencyMap = arg2;
const first = arg2[0];
const tmp2 = outer1_6(callback, first, dependencyMap);
const tmp3 = tmp2[callback(undefined, 934).GEN_AI_REQUEST_MODEL_ATTRIBUTE];
let str = "unknown";
if (null != tmp3) {
str = tmp3;
}
let obj = callback(936);
const finalOperationName = obj.getFinalOperationName(callback);
const obj2 = callback(951);
const obj3 = callback(842);
if (isStreamingMethodResult) {
obj = {};
const _HermesInternal2 = HermesInternal;
obj.name = "" + finalOperationName + " " + str + " stream-response";
obj.op = callback(936).getSpanOperation(callback);
obj.attributes = tmp2;
let startSpanManualResult = obj3.startSpanManual(obj, (() => {
let closure_0 = callback2(async (arg0) => {
const recordInputs = first.recordInputs;
let tmp = recordInputs;
if (recordInputs) {
tmp = outer2_2;
}
if (tmp) {
outer4_7(arg0, outer2_2);
}
const tmp6 = yield closure_0.apply(closure_1, outer2_1);
return callback(table[10]).instrumentStream(tmp6, arg0, Boolean(first.recordOutputs));
});
return function(arg0) {
return callback(...arguments);
};
})());
const tmp6Result = callback(936);
} else {
obj = {};
const _HermesInternal = HermesInternal;
if (closure_3) {
let combined = concat(finalOperationName, " ", str, " create");
} else {
combined = concat(finalOperationName, " ", str);
}
obj.name = combined;
obj.op = callback(936).getSpanOperation(callback);
obj.attributes = tmp2;
startSpanManualResult = obj3.startSpan(obj, (arg0) => {
const callback = arg0;
if (tmp) {
outer2_7(arg0, first);
}
return callback(table[13]).handleCallbackErrors(() => callback.apply(closure_1, outer1_1), (arg0) => {
let obj = callback(table[12]);
obj = { handled: false, type: "auto.ai.google_genai" };
obj = { function: callback };
obj.data = obj;
obj.captureException(arg0, { mechanism: obj });
}, () => {
}, (modelVersion) => {
if (!outer2_3) {
(function addResponseAttributes(closure_0, modelVersion, recordOutputs) {
if (modelVersion) {
if ("object" === typeof modelVersion) {
if (modelVersion.modelVersion) {
const attr = closure_0.setAttribute(callback(934).GEN_AI_RESPONSE_MODEL_ATTRIBUTE, modelVersion.modelVersion);
}
if (modelVersion.usageMetadata) {
if ("object" === typeof modelVersion.usageMetadata) {
const usageMetadata = modelVersion.usageMetadata;
if ("number" === typeof usageMetadata.promptTokenCount) {
closure_0.setAttributes(outer4_4({}, callback(934).GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE, usageMetadata.promptTokenCount));
}
if ("number" === typeof usageMetadata.candidatesTokenCount) {
closure_0.setAttributes(outer4_4({}, callback(934).GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE, usageMetadata.candidatesTokenCount));
}
if ("number" === typeof usageMetadata.totalTokenCount) {
closure_0.setAttributes(outer4_4({}, callback(934).GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE, usageMetadata.totalTokenCount));
}
}
}
if (recordOutputs) {
let _Array = Array;
if (Array.isArray(modelVersion.candidates)) {
if (modelVersion.candidates.length > 0) {
const candidates = modelVersion.candidates;
let mapped = candidates.map(() => { ... });
let found = mapped.filter(() => { ... });
if (found.length > 0) {
closure_0.setAttributes(outer4_4({}, callback(934).GEN_AI_RESPONSE_TEXT_ATTRIBUTE, found.join("")));
}
}
}
}
if (recordOutputs) {
if (modelVersion.functionCalls) {
const functionCalls = modelVersion.functionCalls;
const _Array2 = Array;
let isArray = Array.isArray(functionCalls);
if (isArray) {
isArray = functionCalls.length > 0;
}
if (isArray) {
const _JSON = JSON;
closure_0.setAttributes(outer4_4({}, callback(934).GEN_AI_RESPONSE_TOOL_CALLS_ATTRIBUTE, JSON.stringify(functionCalls)));
}
}
}
}
}
})(closure_0, modelVersion, first.recordOutputs);
}
});
});
const obj5 = callback(936);
}
return startSpanManualResult;
}
});
return proxy;
}
function createDeepProxy(arg0) {
let str = "";
if (arguments.length > 1) {
str = "";
if (undefined !== arguments[1]) {
str = arguments[1];
}
}
let tmp;
if (arguments.length > 2) {
tmp = arguments[2];
}
const dependencyMap = tmp;
const proxy = new Proxy(arg0, {
get(iter) {
const value = Reflect.get(iter, arg1, arg2);
const methodPath = str(tmp[5]).buildMethodPath(closure_0, String(arg1));
if ("function" === typeof value) {
if (obj3.shouldInstrument(methodPath)) {
if (methodPath === str(tmp[4]).CHATS_CREATE_METHOD) {
closure_0 = outer1_8(value, methodPath, iter, tmp);
return function instrumentedAndProxiedCreate() {
const applyResult = callback(...arguments);
let tmp2 = applyResult;
if (applyResult) {
tmp2 = applyResult;
if ("object" === typeof applyResult) {
tmp2 = outer2_9(applyResult, str(table[4]).CHAT_PATH, outer1_1);
}
}
return tmp2;
};
} else {
return outer1_8(value, methodPath, iter, tmp);
}
}
obj3 = str(tmp[7]);
}
if ("function" === typeof value) {
let bindResult = value.bind(iter);
} else {
bindResult = value;
if (value) {
bindResult = value;
if ("object" === tmp2) {
bindResult = outer1_9(value, methodPath, tmp);
}
}
}
return bindResult;
}
});
return proxy;
}
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
export { extractModel };
export const instrumentGoogleGenAIClient = function instrumentGoogleGenAIClient(arg0, arg1) {
const client = require(825) /* getCurrentScope */.getClient();
let sendDefaultPii;
if (null != client) {
sendDefaultPii = client.getOptions().sendDefaultPii;
}
const recordInputs = Boolean(sendDefaultPii);
return createDeepProxy(arg0, "", Object.assign({ recordInputs, recordOutputs: recordInputs }, arg1));
};