Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
use constants in remaining tests
  • Loading branch information
nicohrubec committed Jan 23, 2026
commit 97620eb7ac361ba12632589dee991cfa2402e65b
280 changes: 149 additions & 131 deletions dev-packages/node-integration-tests/suites/tracing/langchain/v1/test.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,22 @@
import { SEMANTIC_ATTRIBUTE_SENTRY_OP, SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN } from '@sentry/core';
import { afterAll, expect } from 'vitest';
import {
GEN_AI_INPUT_MESSAGES_ATTRIBUTE,
GEN_AI_OPERATION_NAME_ATTRIBUTE,
GEN_AI_REQUEST_MAX_TOKENS_ATTRIBUTE,
GEN_AI_REQUEST_MODEL_ATTRIBUTE,
GEN_AI_REQUEST_TEMPERATURE_ATTRIBUTE,
GEN_AI_REQUEST_TOP_P_ATTRIBUTE,
GEN_AI_RESPONSE_ID_ATTRIBUTE,
GEN_AI_RESPONSE_MODEL_ATTRIBUTE,
GEN_AI_RESPONSE_STOP_REASON_ATTRIBUTE,
GEN_AI_RESPONSE_TEXT_ATTRIBUTE,
GEN_AI_RESPONSE_TOOL_CALLS_ATTRIBUTE,
GEN_AI_SYSTEM_ATTRIBUTE,
GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE,
GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE,
GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE,
} from '../../../../../../packages/core/src/tracing/ai/gen-ai-attributes';
import { conditionalTest } from '../../../../utils';
import { cleanupChildProcesses, createEsmAndCjsTests } from '../../../../utils/runner';

Expand All @@ -15,19 +33,19 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// First span - chat model with claude-3-5-sonnet
expect.objectContaining({
data: expect.objectContaining({
'gen_ai.operation.name': 'chat',
'sentry.op': 'gen_ai.chat',
'sentry.origin': 'auto.ai.langchain',
'gen_ai.system': 'anthropic',
'gen_ai.request.model': 'claude-3-5-sonnet-20241022',
'gen_ai.request.temperature': 0.7,
'gen_ai.request.max_tokens': 100,
'gen_ai.usage.input_tokens': 10,
'gen_ai.usage.output_tokens': 15,
'gen_ai.usage.total_tokens': 25,
'gen_ai.response.id': expect.any(String),
'gen_ai.response.model': expect.any(String),
'gen_ai.response.stop_reason': expect.any(String),
[GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
[GEN_AI_SYSTEM_ATTRIBUTE]: 'anthropic',
[GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'claude-3-5-sonnet-20241022',
[GEN_AI_REQUEST_TEMPERATURE_ATTRIBUTE]: 0.7,
[GEN_AI_REQUEST_MAX_TOKENS_ATTRIBUTE]: 100,
[GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE]: 10,
[GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE]: 15,
[GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE]: 25,
[GEN_AI_RESPONSE_ID_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_MODEL_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_STOP_REASON_ATTRIBUTE]: expect.any(String),
}),
description: 'chat claude-3-5-sonnet-20241022',
op: 'gen_ai.chat',
Expand All @@ -37,20 +55,20 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// Second span - chat model with claude-3-opus
expect.objectContaining({
data: expect.objectContaining({
'gen_ai.operation.name': 'chat',
'sentry.op': 'gen_ai.chat',
'sentry.origin': 'auto.ai.langchain',
'gen_ai.system': 'anthropic',
'gen_ai.request.model': 'claude-3-opus-20240229',
'gen_ai.request.temperature': 0.9,
'gen_ai.request.top_p': 0.95,
'gen_ai.request.max_tokens': 200,
'gen_ai.usage.input_tokens': 10,
'gen_ai.usage.output_tokens': 15,
'gen_ai.usage.total_tokens': 25,
'gen_ai.response.id': expect.any(String),
'gen_ai.response.model': expect.any(String),
'gen_ai.response.stop_reason': expect.any(String),
[GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
[GEN_AI_SYSTEM_ATTRIBUTE]: 'anthropic',
[GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'claude-3-opus-20240229',
[GEN_AI_REQUEST_TEMPERATURE_ATTRIBUTE]: 0.9,
[GEN_AI_REQUEST_TOP_P_ATTRIBUTE]: 0.95,
[GEN_AI_REQUEST_MAX_TOKENS_ATTRIBUTE]: 200,
[GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE]: 10,
[GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE]: 15,
[GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE]: 25,
[GEN_AI_RESPONSE_ID_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_MODEL_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_STOP_REASON_ATTRIBUTE]: expect.any(String),
}),
description: 'chat claude-3-opus-20240229',
op: 'gen_ai.chat',
Expand All @@ -60,11 +78,11 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// Third span - error handling
// expect.objectContaining({
// data: expect.objectContaining({
// 'gen_ai.operation.name': 'chat',
// 'sentry.op': 'gen_ai.chat',
// 'sentry.origin': 'auto.ai.langchain',
// 'gen_ai.system': 'anthropic',
// 'gen_ai.request.model': 'error-model',
// [GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
// [SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
// [SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
// [GEN_AI_SYSTEM_ATTRIBUTE]: 'anthropic',
// [GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'error-model',
// }),
// description: 'chat error-model',
// op: 'gen_ai.chat',
Expand All @@ -80,21 +98,21 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// First span - chat model with PII
expect.objectContaining({
data: expect.objectContaining({
'gen_ai.operation.name': 'chat',
'sentry.op': 'gen_ai.chat',
'sentry.origin': 'auto.ai.langchain',
'gen_ai.system': 'anthropic',
'gen_ai.request.model': 'claude-3-5-sonnet-20241022',
'gen_ai.request.temperature': 0.7,
'gen_ai.request.max_tokens': 100,
'gen_ai.input.messages': expect.any(String), // Should include messages when recordInputs: true
'gen_ai.response.text': expect.any(String), // Should include response when recordOutputs: true
'gen_ai.response.id': expect.any(String),
'gen_ai.response.model': expect.any(String),
'gen_ai.response.stop_reason': expect.any(String),
'gen_ai.usage.input_tokens': 10,
'gen_ai.usage.output_tokens': 15,
'gen_ai.usage.total_tokens': 25,
[GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
[GEN_AI_SYSTEM_ATTRIBUTE]: 'anthropic',
[GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'claude-3-5-sonnet-20241022',
[GEN_AI_REQUEST_TEMPERATURE_ATTRIBUTE]: 0.7,
[GEN_AI_REQUEST_MAX_TOKENS_ATTRIBUTE]: 100,
[GEN_AI_INPUT_MESSAGES_ATTRIBUTE]: expect.any(String), // Should include messages when recordInputs: true
[GEN_AI_RESPONSE_TEXT_ATTRIBUTE]: expect.any(String), // Should include response when recordOutputs: true
[GEN_AI_RESPONSE_ID_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_MODEL_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_STOP_REASON_ATTRIBUTE]: expect.any(String),
[GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE]: 10,
[GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE]: 15,
[GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE]: 25,
}),
description: 'chat claude-3-5-sonnet-20241022',
op: 'gen_ai.chat',
Expand All @@ -104,22 +122,22 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// Second span - chat model with PII
expect.objectContaining({
data: expect.objectContaining({
'gen_ai.operation.name': 'chat',
'sentry.op': 'gen_ai.chat',
'sentry.origin': 'auto.ai.langchain',
'gen_ai.system': 'anthropic',
'gen_ai.request.model': 'claude-3-opus-20240229',
'gen_ai.request.temperature': 0.9,
'gen_ai.request.top_p': 0.95,
'gen_ai.request.max_tokens': 200,
'gen_ai.input.messages': expect.any(String), // Should include messages when recordInputs: true
'gen_ai.response.text': expect.any(String), // Should include response when recordOutputs: true
'gen_ai.response.id': expect.any(String),
'gen_ai.response.model': expect.any(String),
'gen_ai.response.stop_reason': expect.any(String),
'gen_ai.usage.input_tokens': 10,
'gen_ai.usage.output_tokens': 15,
'gen_ai.usage.total_tokens': 25,
[GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
[GEN_AI_SYSTEM_ATTRIBUTE]: 'anthropic',
[GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'claude-3-opus-20240229',
[GEN_AI_REQUEST_TEMPERATURE_ATTRIBUTE]: 0.9,
[GEN_AI_REQUEST_TOP_P_ATTRIBUTE]: 0.95,
[GEN_AI_REQUEST_MAX_TOKENS_ATTRIBUTE]: 200,
[GEN_AI_INPUT_MESSAGES_ATTRIBUTE]: expect.any(String), // Should include messages when recordInputs: true
[GEN_AI_RESPONSE_TEXT_ATTRIBUTE]: expect.any(String), // Should include response when recordOutputs: true
[GEN_AI_RESPONSE_ID_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_MODEL_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_STOP_REASON_ATTRIBUTE]: expect.any(String),
[GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE]: 10,
[GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE]: 15,
[GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE]: 25,
}),
description: 'chat claude-3-opus-20240229',
op: 'gen_ai.chat',
Expand All @@ -129,12 +147,12 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// Third span - error handling with PII
// expect.objectContaining({
// data: expect.objectContaining({
// 'gen_ai.operation.name': 'chat',
// 'sentry.op': 'gen_ai.chat',
// 'sentry.origin': 'auto.ai.langchain',
// 'gen_ai.system': 'anthropic',
// 'gen_ai.request.model': 'error-model',
// 'gen_ai.input.messages': expect.any(String), // Should include messages when recordInputs: true
// [GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
// [SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
// [SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
// [GEN_AI_SYSTEM_ATTRIBUTE]: 'anthropic',
// [GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'error-model',
// [GEN_AI_INPUT_MESSAGES_ATTRIBUTE]: expect.any(String), // Should include messages when recordInputs: true
// }),
// description: 'chat error-model',
// op: 'gen_ai.chat',
Expand Down Expand Up @@ -193,20 +211,20 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
spans: expect.arrayContaining([
expect.objectContaining({
data: expect.objectContaining({
'gen_ai.operation.name': 'chat',
'sentry.op': 'gen_ai.chat',
'sentry.origin': 'auto.ai.langchain',
'gen_ai.system': 'anthropic',
'gen_ai.request.model': 'claude-3-5-sonnet-20241022',
'gen_ai.request.temperature': 0.7,
'gen_ai.request.max_tokens': 150,
'gen_ai.usage.input_tokens': 20,
'gen_ai.usage.output_tokens': 30,
'gen_ai.usage.total_tokens': 50,
'gen_ai.response.id': expect.any(String),
'gen_ai.response.model': expect.any(String),
'gen_ai.response.stop_reason': 'tool_use',
'gen_ai.response.tool_calls': expect.any(String),
[GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
[GEN_AI_SYSTEM_ATTRIBUTE]: 'anthropic',
[GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'claude-3-5-sonnet-20241022',
[GEN_AI_REQUEST_TEMPERATURE_ATTRIBUTE]: 0.7,
[GEN_AI_REQUEST_MAX_TOKENS_ATTRIBUTE]: 150,
[GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE]: 20,
[GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE]: 30,
[GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE]: 50,
[GEN_AI_RESPONSE_ID_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_MODEL_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_STOP_REASON_ATTRIBUTE]: 'tool_use',
[GEN_AI_RESPONSE_TOOL_CALLS_ATTRIBUTE]: expect.any(String),
}),
description: 'chat claude-3-5-sonnet-20241022',
op: 'gen_ai.chat',
Expand Down Expand Up @@ -244,13 +262,13 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// First call: String input truncated (only C's remain, D's are cropped)
expect.objectContaining({
data: expect.objectContaining({
'gen_ai.operation.name': 'chat',
'sentry.op': 'gen_ai.chat',
'sentry.origin': 'auto.ai.langchain',
'gen_ai.system': 'anthropic',
'gen_ai.request.model': 'claude-3-5-sonnet-20241022',
[GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
[GEN_AI_SYSTEM_ATTRIBUTE]: 'anthropic',
[GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'claude-3-5-sonnet-20241022',
// Messages should be present and should include truncated string input (contains only Cs)
'gen_ai.input.messages': expect.stringMatching(/^\[\{"role":"user","content":"C+"\}\]$/),
[GEN_AI_INPUT_MESSAGES_ATTRIBUTE]: expect.stringMatching(/^\[\{"role":"user","content":"C+"\}\]$/),
}),
description: 'chat claude-3-5-sonnet-20241022',
op: 'gen_ai.chat',
Expand All @@ -260,13 +278,13 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// Second call: Array input, last message truncated (only C's remain, D's are cropped)
expect.objectContaining({
data: expect.objectContaining({
'gen_ai.operation.name': 'chat',
'sentry.op': 'gen_ai.chat',
'sentry.origin': 'auto.ai.langchain',
'gen_ai.system': 'anthropic',
'gen_ai.request.model': 'claude-3-5-sonnet-20241022',
[GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
[GEN_AI_SYSTEM_ATTRIBUTE]: 'anthropic',
[GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'claude-3-5-sonnet-20241022',
// Messages should be present (truncation happened) and should be a JSON array of a single index (contains only Cs)
'gen_ai.input.messages': expect.stringMatching(/^\[\{"role":"user","content":"C+"\}\]$/),
[GEN_AI_INPUT_MESSAGES_ATTRIBUTE]: expect.stringMatching(/^\[\{"role":"user","content":"C+"\}\]$/),
}),
description: 'chat claude-3-5-sonnet-20241022',
op: 'gen_ai.chat',
Expand All @@ -276,13 +294,13 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// Third call: Last message is small and kept without truncation
expect.objectContaining({
data: expect.objectContaining({
'gen_ai.operation.name': 'chat',
'sentry.op': 'gen_ai.chat',
'sentry.origin': 'auto.ai.langchain',
'gen_ai.system': 'anthropic',
'gen_ai.request.model': 'claude-3-5-sonnet-20241022',
[GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
[GEN_AI_SYSTEM_ATTRIBUTE]: 'anthropic',
[GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'claude-3-5-sonnet-20241022',
// Small message should be kept intact
'gen_ai.input.messages': JSON.stringify([
[GEN_AI_INPUT_MESSAGES_ATTRIBUTE]: JSON.stringify([
{ role: 'user', content: 'This is a small message that fits within the limit' },
]),
}),
Expand Down Expand Up @@ -388,19 +406,19 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// First span - initChatModel with gpt-4o
expect.objectContaining({
data: expect.objectContaining({
'gen_ai.operation.name': 'chat',
'sentry.op': 'gen_ai.chat',
'sentry.origin': 'auto.ai.langchain',
'gen_ai.system': 'openai',
'gen_ai.request.model': 'gpt-4o',
'gen_ai.request.temperature': 0.7,
'gen_ai.request.max_tokens': 100,
'gen_ai.usage.input_tokens': 8,
'gen_ai.usage.output_tokens': 12,
'gen_ai.usage.total_tokens': 20,
'gen_ai.response.id': expect.any(String),
'gen_ai.response.model': 'gpt-4o',
'gen_ai.response.stop_reason': 'stop',
[GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
[GEN_AI_SYSTEM_ATTRIBUTE]: 'openai',
[GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'gpt-4o',
[GEN_AI_REQUEST_TEMPERATURE_ATTRIBUTE]: 0.7,
[GEN_AI_REQUEST_MAX_TOKENS_ATTRIBUTE]: 100,
[GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE]: 8,
[GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE]: 12,
[GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE]: 20,
[GEN_AI_RESPONSE_ID_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_MODEL_ATTRIBUTE]: 'gpt-4o',
[GEN_AI_RESPONSE_STOP_REASON_ATTRIBUTE]: 'stop',
}),
description: 'chat gpt-4o',
op: 'gen_ai.chat',
Expand All @@ -410,18 +428,18 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// Second span - initChatModel with gpt-3.5-turbo
expect.objectContaining({
data: expect.objectContaining({
'gen_ai.operation.name': 'chat',
'sentry.op': 'gen_ai.chat',
'sentry.origin': 'auto.ai.langchain',
'gen_ai.system': 'openai',
'gen_ai.request.model': 'gpt-3.5-turbo',
'gen_ai.request.temperature': 0.5,
'gen_ai.usage.input_tokens': 8,
'gen_ai.usage.output_tokens': 12,
'gen_ai.usage.total_tokens': 20,
'gen_ai.response.id': expect.any(String),
'gen_ai.response.model': 'gpt-3.5-turbo',
'gen_ai.response.stop_reason': 'stop',
[GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
[GEN_AI_SYSTEM_ATTRIBUTE]: 'openai',
[GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'gpt-3.5-turbo',
[GEN_AI_REQUEST_TEMPERATURE_ATTRIBUTE]: 0.5,
[GEN_AI_USAGE_INPUT_TOKENS_ATTRIBUTE]: 8,
[GEN_AI_USAGE_OUTPUT_TOKENS_ATTRIBUTE]: 12,
[GEN_AI_USAGE_TOTAL_TOKENS_ATTRIBUTE]: 20,
[GEN_AI_RESPONSE_ID_ATTRIBUTE]: expect.any(String),
[GEN_AI_RESPONSE_MODEL_ATTRIBUTE]: 'gpt-3.5-turbo',
[GEN_AI_RESPONSE_STOP_REASON_ATTRIBUTE]: 'stop',
}),
description: 'chat gpt-3.5-turbo',
op: 'gen_ai.chat',
Expand All @@ -431,11 +449,11 @@ conditionalTest({ min: 20 })('LangChain integration (v1)', () => {
// Third span - error handling
// expect.objectContaining({
// data: expect.objectContaining({
// 'gen_ai.operation.name': 'chat',
// 'sentry.op': 'gen_ai.chat',
// 'sentry.origin': 'auto.ai.langchain',
// 'gen_ai.system': 'openai',
// 'gen_ai.request.model': 'error-model',
// [GEN_AI_OPERATION_NAME_ATTRIBUTE]: 'chat',
// [SEMANTIC_ATTRIBUTE_SENTRY_OP]: 'gen_ai.chat',
// [SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ai.langchain',
// [GEN_AI_SYSTEM_ATTRIBUTE]: 'openai',
// [GEN_AI_REQUEST_MODEL_ATTRIBUTE]: 'error-model',
// }),
// description: 'chat error-model',
// op: 'gen_ai.chat',
Expand Down
Loading
Loading