diff --git a/README.md b/README.md index 402b8f2c..4c0af2b8 100644 --- a/README.md +++ b/README.md @@ -240,12 +240,14 @@ Langtrace automatically captures traces from the following vendors: | Cohere | LLM | :white_check_mark: | :white_check_mark: | | Groq | LLM | :x: | :white_check_mark: | | Perplexity | LLM | :white_check_mark: | :white_check_mark: | +| Gemini | LLM | :x: | :white_check_mark: | | Langchain | Framework | :x: | :white_check_mark: | | LlamaIndex | Framework | :white_check_mark: | :white_check_mark: | | Langgraph | Framework | :x: | :white_check_mark: | | DSPy | Framework | :x: | :white_check_mark: | | CrewAI | Framework | :x: | :white_check_mark: | | Ollama | Framework | :x: | :white_check_mark: | +| VertexAI | Framework | :x: | :white_check_mark: | | Pinecone | Vector Database | :white_check_mark: | :white_check_mark: | | ChromaDB | Vector Database | :white_check_mark: | :white_check_mark: | | QDrant | Vector Database | :white_check_mark: | :white_check_mark: | diff --git a/pyproject.toml b/pyproject.toml index 55f9ddef..d833506f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,7 +18,7 @@ classifiers=[ "Operating System :: OS Independent", ] dependencies = [ - 'trace-attributes>=5.0.0,<6.0.0', + 'trace-attributes>=6.0.0,<7.0.0', 'opentelemetry-api>=1.25.0', 'opentelemetry-sdk>=1.25.0', 'opentelemetry-instrumentation>=0.46b0', @@ -49,7 +49,10 @@ dev = [ "cohere", "qdrant_client", "weaviate-client", - "ollama" + "ollama", + "groq", + "google-generativeai", + "google-cloud-aiplatform" ] test = [ diff --git a/src/examples/cohere_example/chat.py b/src/examples/cohere_example/chat.py index d62573b9..1a10ab29 100644 --- a/src/examples/cohere_example/chat.py +++ b/src/examples/cohere_example/chat.py @@ -23,6 +23,7 @@ def chat_comp(): "message": "The man who is widely credited with discovering gravity is Sir Isaac Newton", }, ], + k=3, message="Tell me a story in 3 sentences or less?", preamble="answer like a pirate", # perform web search before answering the question. You can also use your own custom connector. diff --git a/src/examples/cohere_example/chat_stream.py b/src/examples/cohere_example/chat_stream.py index 39f53ac6..e94c0677 100644 --- a/src/examples/cohere_example/chat_stream.py +++ b/src/examples/cohere_example/chat_stream.py @@ -18,6 +18,9 @@ def chat_stream(): message="Tell me a short story in 2 lines", preamble="Respond like a pirate", max_tokens=100, + k=3, + p=0.9, + temperature=0.5, ): if event.event_type == "text-generation": result.append(event.text) diff --git a/src/examples/gemini_example/__init__.py b/src/examples/gemini_example/__init__.py new file mode 100644 index 00000000..5b8530ad --- /dev/null +++ b/src/examples/gemini_example/__init__.py @@ -0,0 +1,6 @@ +from .main import basic + + +class GeminiRunner: + def run(self): + basic() diff --git a/src/examples/gemini_example/function_tools.py b/src/examples/gemini_example/function_tools.py new file mode 100644 index 00000000..78049ecd --- /dev/null +++ b/src/examples/gemini_example/function_tools.py @@ -0,0 +1,62 @@ +tools = [ + { + "function_declarations": [ + { + "name": "find_movies", + "description": "find movie titles currently playing in theaters based on any description, genre, title words, etc.", + "parameters": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The city and state, e.g. San Francisco, CA or a zip code e.g. 95616", + }, + "description": { + "type": "string", + "description": "Any kind of description including category or genre, title words, attributes, etc.", + }, + }, + "required": ["description"], + }, + }, + { + "name": "find_theaters", + "description": "find theaters based on location and optionally movie title which is currently playing in theaters", + "parameters": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The city and state, e.g. San Francisco, CA or a zip code e.g. 95616", + }, + "movie": {"type": "string", "description": "Any movie title"}, + }, + "required": ["location"], + }, + }, + { + "name": "get_showtimes", + "description": "Find the start times for movies playing in a specific theater", + "parameters": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The city and state, e.g. San Francisco, CA or a zip code e.g. 95616", + }, + "movie": {"type": "string", "description": "Any movie title"}, + "theater": { + "type": "string", + "description": "Name of the theater", + }, + "date": { + "type": "string", + "description": "Date for requested showtime", + }, + }, + "required": ["location", "movie", "theater", "date"], + }, + }, + ] + } +] diff --git a/src/examples/gemini_example/main.py b/src/examples/gemini_example/main.py new file mode 100644 index 00000000..2990d518 --- /dev/null +++ b/src/examples/gemini_example/main.py @@ -0,0 +1,91 @@ +from langtrace_python_sdk import langtrace +import google.generativeai as genai +from dotenv import load_dotenv +import os +import asyncio +import pathlib +from .function_tools import tools + +load_dotenv() + +langtrace.init(write_spans_to_console=False, batch=False) +genai.configure(api_key=os.environ["GEMINI_API_KEY"]) + + +async def async_demo(): + task1 = asyncio.create_task(async_generate()) + task2 = asyncio.create_task(async_generate(stream=True)) + return await asyncio.gather(task1, task2) + + +def basic(): + generate() + generate(stream=True, with_tools=True) + + # image_to_text() + # audio_to_text() + asyncio.run(async_demo()) + + +def generate(stream=False, with_tools=False): + model = genai.GenerativeModel( + "gemini-1.5-pro", system_instruction="You are a cat. Your name is Neko." + ) + + response = model.generate_content( + "Write a story about a AI and magic", + stream=stream, + tools=tools if with_tools else None, + ) + if stream: + for res in response: + if res.text: + print(res.text) + else: + print(response.text) + + +async def async_generate(stream=False): + model = genai.GenerativeModel( + "gemini-1.5-pro", system_instruction="You are a cat. Your name is Neko." + ) + response = await model.generate_content_async( + "Write a story about a AI and magic", stream=stream + ) + if stream: + async for chunk in response: + if chunk.text: + print(chunk.text) + else: + print(response.text) + + +def image_to_text(stream=False): + model = genai.GenerativeModel("gemini-1.5-flash") + image1 = { + "mime_type": "image/jpeg", + "data": pathlib.Path("src/examples/gemini_example/jetpack.jpg").read_bytes(), + } + + prompt = "Describe me this picture. What do you see in it." + response = model.generate_content([prompt, image1], stream=stream) + if stream: + for res in response: + print(res.text) + else: + print(response.text) + + +# def audio_to_text(stream=False): +# model = genai.GenerativeModel("gemini-1.5-flash") +# audio = genai.upload_file( +# pathlib.Path("src/examples/gemini_example/voice_note.mp3") +# ) + +# prompt = "Summarize this voice recording." +# response = model.generate_content([prompt, audio], stream=stream) +# if stream: +# for res in response: +# print(res.text) +# else: +# print(response.text) diff --git a/src/examples/langchain_example/__init__.py b/src/examples/langchain_example/__init__.py index 481ac927..abc72b43 100644 --- a/src/examples/langchain_example/__init__.py +++ b/src/examples/langchain_example/__init__.py @@ -1,6 +1,8 @@ from .basic import basic_app, rag, load_and_split from langtrace_python_sdk import with_langtrace_root_span +from .groq_example import groq_basic, groq_streaming + class LangChainRunner: @with_langtrace_root_span("LangChain") @@ -8,3 +10,9 @@ def run(self): basic_app() rag() load_and_split() + + +class GroqRunner: + @with_langtrace_root_span("Groq") + def run(self): + groq_streaming() diff --git a/src/examples/langchain_example/groq_example.py b/src/examples/langchain_example/groq_example.py index 32749893..c16e4851 100644 --- a/src/examples/langchain_example/groq_example.py +++ b/src/examples/langchain_example/groq_example.py @@ -1,6 +1,7 @@ from dotenv import find_dotenv, load_dotenv from langchain_core.prompts import ChatPromptTemplate from langchain_groq import ChatGroq +from groq import Groq _ = load_dotenv(find_dotenv()) @@ -12,21 +13,33 @@ langtrace.init() +client = Groq() -def groq_example(): - chat = ChatGroq(temperature=0, model_name="mixtral-8x7b-32768") - - system = "You are a helpful assistant." - human = "{text}" - prompt = ChatPromptTemplate.from_messages([("system", system), ("human", human)]) - - chain = prompt | chat - result = chain.invoke( - {"text": "Explain the importance of low latency LLMs in 2 sentences or less."} +def groq_basic(): + chat_completion = client.chat.completions.create( + messages=[ + { + "role": "user", + "content": "Explain the importance of low latency LLMs", + } + ], + stream=False, + model="llama3-8b-8192", ) - # print(result) - return result - - -groq_example() + return chat_completion + + +def groq_streaming(): + chat_completion = client.chat.completions.create( + messages=[ + { + "role": "user", + "content": "Explain the importance of low latency LLMs", + } + ], + stream=True, + model="llama3-8b-8192", + ) + for chunk in chat_completion: + print(chunk) diff --git a/src/examples/ollama_example/basic.py b/src/examples/ollama_example/basic.py index 986cf987..d6ea73b6 100644 --- a/src/examples/ollama_example/basic.py +++ b/src/examples/ollama_example/basic.py @@ -17,6 +17,7 @@ def chat(): "content": "hi", }, ], + options={"temperature": 0.5}, stream=True, ) diff --git a/src/examples/openai_example/__init__.py b/src/examples/openai_example/__init__.py index 1511a6f4..0efbb62b 100644 --- a/src/examples/openai_example/__init__.py +++ b/src/examples/openai_example/__init__.py @@ -10,6 +10,7 @@ def run(self): run_conversation as run_conversation_streaming, ) from .chat_completion import chat_completion as chat_completion_example + from .embeddings_create import embeddings_create as embeddings_create_example from .function_calling import function_calling as function_example from .images_edit import image_edit diff --git a/src/examples/openai_example/async_tool_calling_nonstreaming.py b/src/examples/openai_example/async_tool_calling_nonstreaming.py index 887f2d8d..46a74779 100644 --- a/src/examples/openai_example/async_tool_calling_nonstreaming.py +++ b/src/examples/openai_example/async_tool_calling_nonstreaming.py @@ -8,7 +8,7 @@ _ = load_dotenv(find_dotenv()) -langtrace.init() +langtrace.init(write_spans_to_console=True) client = AsyncOpenAI() diff --git a/src/examples/openai_example/chat_completion.py b/src/examples/openai_example/chat_completion.py index c7c7c30f..95a7ab1b 100644 --- a/src/examples/openai_example/chat_completion.py +++ b/src/examples/openai_example/chat_completion.py @@ -9,7 +9,7 @@ _ = load_dotenv(find_dotenv()) -langtrace.init(write_spans_to_console=False) +langtrace.init(write_spans_to_console=True) client = OpenAI() diff --git a/src/examples/openai_example/embeddings_create.py b/src/examples/openai_example/embeddings_create.py index 39849348..1b6c12e2 100644 --- a/src/examples/openai_example/embeddings_create.py +++ b/src/examples/openai_example/embeddings_create.py @@ -16,5 +16,6 @@ def embeddings_create(): result = client.embeddings.create( model="text-embedding-ada-002", input="Once upon a time, there was a pirate.", + encoding_format="float", ) return result diff --git a/src/examples/openai_example/images_edit.py b/src/examples/openai_example/images_edit.py index e177f519..19f1d5c3 100644 --- a/src/examples/openai_example/images_edit.py +++ b/src/examples/openai_example/images_edit.py @@ -23,8 +23,8 @@ def image_edit(): response = client.images.edit( model="dall-e-2", - image=open("./resources/lounge_flamingo.png", "rb"), - mask=open("./resources/mask.png", "rb"), + image=open("src/examples/openai_example/resources/lounge_flamingo.png", "rb"), + mask=open("src/examples/openai_example/resources/mask.png", "rb"), prompt="A sunlit indoor lounge area with a pool and duck standing in side with flamingo.", n=1, size="1024x1024", diff --git a/src/examples/vertexai_example/__init__.py b/src/examples/vertexai_example/__init__.py new file mode 100644 index 00000000..0cf47653 --- /dev/null +++ b/src/examples/vertexai_example/__init__.py @@ -0,0 +1,6 @@ +from .main import basic + + +class VertexAIRunner: + def run(self): + basic() diff --git a/src/examples/vertexai_example/main.py b/src/examples/vertexai_example/main.py new file mode 100644 index 00000000..529aea73 --- /dev/null +++ b/src/examples/vertexai_example/main.py @@ -0,0 +1,214 @@ +import vertexai +import base64 +import asyncio +import vertexai.preview.generative_models as generative_models +from vertexai.language_models import ChatModel, InputOutputTextPair, TextGenerationModel +from langtrace_python_sdk import langtrace +from vertexai.generative_models import GenerativeModel, Part, FinishReason +from dotenv import load_dotenv + +load_dotenv() + +langtrace.init(write_spans_to_console=True, batch=False) +vertexai.init(project="model-palace-429011-f5", location="us-central1") + + +def basic(): + # chat() + # chat_streaming() + # streaming_prediction() + # asyncio.run(async_streaming_prediction()) + + generate() + generate(stream=True) + + image_to_text() + image_to_text(stream=True) + + video_to_text() + video_to_text(stream=True) + + audio_to_text() + audio_to_text(stream=True) + + +def chat(): + """Chat Example with a Large Language Model""" + + chat_model = ChatModel.from_pretrained("chat-bison") + + parameters = { + "temperature": 0.8, + "max_output_tokens": 256, + "top_p": 0.95, + "top_k": 40, + } + + chat = chat_model.start_chat( + context="My name is Miles. You are an astronomer, knowledgeable about the solar system.", + examples=[ + InputOutputTextPair( + input_text="How many moons does Mars have?", + output_text="The planet Mars has two moons, Phobos and Deimos.", + ), + ], + ) + + response = chat.send_message( + message="How many planets are there in the solar system?", **parameters + ) + + return response + + +def chat_streaming() -> str: + """Streaming Chat Example with a Large Language Model""" + + chat_model = ChatModel.from_pretrained("chat-bison") + + parameters = { + "temperature": 0.8, + "max_output_tokens": 256, + "top_p": 0.95, + "top_k": 40, + } + + chat = chat_model.start_chat( + context="My name is Miles. You are an astronomer, knowledgeable about the solar system.", + examples=[ + InputOutputTextPair( + input_text="How many moons does Mars have?", + output_text="The planet Mars has two moons, Phobos and Deimos.", + ), + ], + ) + + responses = chat.send_message_streaming( + message="How many planets are there in the solar system?", **parameters + ) + + result = [response for response in responses] + return result + + +def streaming_prediction() -> str: + """Streaming Text Example with a Large Language Model""" + + text_generation_model = TextGenerationModel.from_pretrained("text-bison") + parameters = { + "max_output_tokens": 256, + "top_p": 0.8, + "top_k": 40, + } + responses = text_generation_model.predict_streaming( + prompt="Give me ten interview questions for the role of program manager.", + **parameters, + ) + result = [response for response in responses] + print(result) + return result + + +async def async_streaming_prediction() -> str: + """Async Streaming Text Example with a Large Language Model""" + + text_generation_model = TextGenerationModel.from_pretrained("text-bison") + parameters = { + "max_output_tokens": 256, + "top_p": 0.8, + "top_k": 40, + } + + responses = text_generation_model.predict_streaming_async( + prompt="Give me ten interview questions for the role of program manager.", + **parameters, + ) + + result = [response async for response in responses] + print(result) + return result + + +def generate(stream=False): + generation_config = { + "max_output_tokens": 8192, + "temperature": 1, + "top_p": 0.95, + } + model = GenerativeModel( + "gemini-experimental", + ) + + responses = model.generate_content( + ["I am a software engineer. I enjoy playing video games and reading"], + generation_config=generation_config, + stream=stream, + ) + + if stream: + for res in responses: + print(res.text) + else: + print(responses.text) + + +def image_to_text(stream=False): + model = GenerativeModel(model_name="gemini-experimental") + + response = model.generate_content( + [ + Part.from_uri( + "gs://cloud-samples-data/generative-ai/image/scones.jpg", + mime_type="image/jpeg", + ), + "What is shown in this image?", + ], + stream=stream, + ) + if stream: + for res in response: + print(res.text) + else: + print(response.text) + + +def video_to_text(stream=False): + model = GenerativeModel(model_name="gemini-experimental") + + prompt = """ + Provide a description of the video. + The description should also contain anything important which people say in the video. + """ + + video_file_uri = "gs://cloud-samples-data/generative-ai/video/pixel8.mp4" + video_file = Part.from_uri(video_file_uri, mime_type="video/mp4") + + contents = [video_file, prompt] + response = model.generate_content(contents, stream=stream) + if stream: + for res in response: + print(res.text) + else: + print(response.text) + + +def audio_to_text(stream=False): + model = GenerativeModel(model_name="gemini-1.5-flash-001") + + prompt = """ + Please provide a summary for the audio. + Provide chapter titles, be concise and short, no need to provide chapter summaries. + Do not make up any information that is not part of the audio and do not be verbose. + """ + + audio_file_uri = "gs://cloud-samples-data/generative-ai/audio/pixel.mp3" + audio_file = Part.from_uri(audio_file_uri, mime_type="audio/mpeg") + + contents = [audio_file, prompt] + + response = model.generate_content(contents, stream=stream) + if stream: + for res in response: + print(res.text) + else: + print(response.text) diff --git a/src/langtrace_python_sdk/constants/instrumentation/common.py b/src/langtrace_python_sdk/constants/instrumentation/common.py index 9f1169b0..3b9586cf 100644 --- a/src/langtrace_python_sdk/constants/instrumentation/common.py +++ b/src/langtrace_python_sdk/constants/instrumentation/common.py @@ -26,6 +26,8 @@ "QDRANT": "Qdrant", "WEAVIATE": "Weaviate", "OLLAMA": "Ollama", + "VERTEXAI": "VertexAI", + "GEMINI": "Gemini", } LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY = "langtrace_additional_attributes" diff --git a/src/langtrace_python_sdk/constants/instrumentation/gemini.py b/src/langtrace_python_sdk/constants/instrumentation/gemini.py new file mode 100644 index 00000000..1643a51d --- /dev/null +++ b/src/langtrace_python_sdk/constants/instrumentation/gemini.py @@ -0,0 +1,12 @@ +APIS = { + "GENERATE_CONTENT": { + "module": "google.generativeai.generative_models", + "method": "GenerativeModel", + "operation": "generate_content", + }, + "AGENERATE_CONTENT": { + "module": "google.generativeai.generative_models", + "method": "GenerativeModel", + "operation": "generate_content_async", + }, +} diff --git a/src/langtrace_python_sdk/constants/instrumentation/vertexai.py b/src/langtrace_python_sdk/constants/instrumentation/vertexai.py new file mode 100644 index 00000000..8ea90ae7 --- /dev/null +++ b/src/langtrace_python_sdk/constants/instrumentation/vertexai.py @@ -0,0 +1,42 @@ +APIS = { + "GENERATE_CONTENT": { + "module": "vertexai.generative_models", + "method": "GenerativeModel", + "operation": "generate_content", + }, + "AGENERATE_CONTENT": { + "module": "vertexai.generative_models", + "method": "GenerativeModel", + "operation": "generate_content_async", + }, + "PREDICT": { + "module": "vertexai.language_models", + "method": "TextGenerationModel", + "operation": "predict", + }, + "APREDICT": { + "module": "vertexai.language_models", + "method": "TextGenerationModel", + "operation": "predict_async", + }, + "PREDICT_STREAM": { + "module": "vertexai.language_models", + "method": "TextGenerationModel", + "operation": "predict_streaming", + }, + "APREDICT_STREAM": { + "module": "vertexai.language_models", + "method": "TextGenerationModel", + "operation": "predict_streaming_async", + }, + "SEND_MESSAGE": { + "module": "vertexai.language_models", + "method": "ChatSession", + "operation": "send_message", + }, + "send_message_streaming": { + "module": "vertexai.language_models", + "method": "ChatSession", + "operation": "send_message_streaming", + }, +} diff --git a/src/langtrace_python_sdk/instrumentation/__init__.py b/src/langtrace_python_sdk/instrumentation/__init__.py index 093607f7..5aec0039 100644 --- a/src/langtrace_python_sdk/instrumentation/__init__.py +++ b/src/langtrace_python_sdk/instrumentation/__init__.py @@ -14,6 +14,8 @@ from .weaviate import WeaviateInstrumentation from .ollama import OllamaInstrumentor from .dspy import DspyInstrumentation +from .vertexai import VertexAIInstrumentation +from .gemini import GeminiInstrumentation __all__ = [ "AnthropicInstrumentation", @@ -32,4 +34,6 @@ "WeaviateInstrumentation", "OllamaInstrumentor", "DspyInstrumentation", + "VertexAIInstrumentation", + "GeminiInstrumentation", ] diff --git a/src/langtrace_python_sdk/instrumentation/anthropic/patch.py b/src/langtrace_python_sdk/instrumentation/anthropic/patch.py index 05e8c4dd..b06fae33 100644 --- a/src/langtrace_python_sdk/instrumentation/anthropic/patch.py +++ b/src/langtrace_python_sdk/instrumentation/anthropic/patch.py @@ -17,120 +17,59 @@ import json from langtrace.trace_attributes import Event, LLMSpanAttributes -from opentelemetry import baggage +from langtrace_python_sdk.utils import set_span_attribute, silently_fail +from langtrace_python_sdk.utils.llm import ( + get_extra_attributes, + get_langtrace_attributes, + get_llm_request_attributes, + get_llm_url, + is_streaming, + set_event_completion, + set_usage_attributes, +) from opentelemetry.trace import SpanKind from opentelemetry.trace.status import Status, StatusCode +from langtrace.trace_attributes import SpanAttributes from langtrace_python_sdk.constants.instrumentation.anthropic import APIS from langtrace_python_sdk.constants.instrumentation.common import ( - LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY, SERVICE_PROVIDERS, ) -from importlib_metadata import version as v - -from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME def messages_create(original_method, version, tracer): """Wrap the `messages_create` method.""" def traced_method(wrapped, instance, args, kwargs): - base_url = ( - str(instance._client._base_url) - if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") - else "" - ) service_provider = SERVICE_PROVIDERS["ANTHROPIC"] # extract system from kwargs and attach as a role to the prompts # we do this to keep it consistent with the openai - prompts = json.dumps(kwargs.get("messages", [])) + prompts = kwargs.get("messages", []) system = kwargs.get("system") if system: - prompts = json.dumps( - [{"role": "system", "content": system}] + kwargs.get("messages", []) - ) - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) + prompts = [{"role": "system", "content": system}] + kwargs.get("messages", []) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": base_url, - "llm.api": APIS["MESSAGES_CREATE"]["ENDPOINT"], - "llm.model": kwargs.get("model"), - "llm.prompts": prompts, - "llm.stream": kwargs.get("stream"), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes(kwargs, prompts=prompts), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: APIS["MESSAGES_CREATE"]["ENDPOINT"], + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) - if kwargs.get("temperature") is not None: - attributes.llm_temperature = kwargs.get("temperature") - if kwargs.get("top_p") is not None: - attributes.llm_top_p = kwargs.get("top_p") - if kwargs.get("top_k") is not None: - attributes.llm_top_p = kwargs.get("top_k") - if kwargs.get("user") is not None: - attributes.llm_user = kwargs.get("user") - if kwargs.get("max_tokens") is not None: - attributes.llm_max_tokens = str(kwargs.get("max_tokens")) - span = tracer.start_span( APIS["MESSAGES_CREATE"]["METHOD"], kind=SpanKind.CLIENT ) for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + set_span_attribute(span, field, value) try: # Attempt to call the original method result = wrapped(*args, **kwargs) - if kwargs.get("stream") is False: - if hasattr(result, "content") and result.content is not None: - span.set_attribute( - "llm.model", - result.model if result.model else kwargs.get("model"), - ) - span.set_attribute( - "llm.responses", - json.dumps( - [ - { - "role": result.role if result.role else "assistant", - "content": result.content[0].text, - "type": result.content[0].type, - } - ] - ), - ) - else: - responses = [] - span.set_attribute("llm.responses", json.dumps(responses)) - if ( - hasattr(result, "system_fingerprint") - and result.system_fingerprint is not None - ): - span.set_attribute( - "llm.system.fingerprint", result.system_fingerprint - ) - # Get the usage - if hasattr(result, "usage") and result.usage is not None: - usage = result.usage - if usage is not None: - usage_dict = { - "input_tokens": usage.input_tokens, - "output_tokens": usage.output_tokens, - "total_tokens": usage.input_tokens + usage.output_tokens, - } - span.set_attribute("llm.token.counts", json.dumps(usage_dict)) - span.set_status(StatusCode.OK) - span.end() - return result - else: - return handle_streaming_response(result, span) + return set_response_attributes(result, span, kwargs) + except Exception as err: # Record the exception in the span span.record_exception(err) @@ -154,7 +93,9 @@ def handle_streaming_response(result, span): and hasattr(chunk.message, "model") and chunk.message.model is not None ): - span.set_attribute("llm.model", chunk.message.model) + span.set_attribute( + SpanAttributes.LLM_RESPONSE_MODEL, chunk.message.model + ) content = "" if hasattr(chunk, "delta") and chunk.delta is not None: content = chunk.delta.text if hasattr(chunk.delta, "text") else "" @@ -177,7 +118,8 @@ def handle_streaming_response(result, span): # Add event for each chunk of content if content: span.add_event( - Event.STREAM_OUTPUT.value, {"response": "".join(content)} + Event.STREAM_OUTPUT.value, + {SpanAttributes.LLM_CONTENT_COMPLETION_CHUNK: "".join(content)}, ) # Assuming this is part of a generator, yield chunk or aggregated content @@ -186,22 +128,52 @@ def handle_streaming_response(result, span): # Finalize span after processing all chunks span.add_event(Event.STREAM_END.value) - span.set_attribute( - "llm.token.counts", - json.dumps( + set_usage_attributes( + span, {"input_tokens": input_tokens, "output_tokens": output_tokens} + ) + completion = [{"role": "assistant", "content": "".join(result_content)}] + set_event_completion(span, completion) + + span.set_status(StatusCode.OK) + span.end() + + def set_response_attributes(result, span, kwargs): + if not is_streaming(kwargs): + if hasattr(result, "content") and result.content is not None: + set_span_attribute( + span, SpanAttributes.LLM_RESPONSE_MODEL, result.model + ) + completion = [ { - "input_tokens": input_tokens, - "output_tokens": output_tokens, - "total_tokens": input_tokens + output_tokens, + "role": result.role if result.role else "assistant", + "content": result.content[0].text, + "type": result.content[0].type, } - ), - ) - span.set_attribute( - "llm.responses", - json.dumps([{"role": "assistant", "content": "".join(result_content)}]), - ) + ] + set_event_completion(span, completion) + + else: + responses = [] + set_event_completion(span, responses) + + if ( + hasattr(result, "system_fingerprint") + and result.system_fingerprint is not None + ): + span.set_attribute( + SpanAttributes.LLM_SYSTEM_FINGERPRINT, + result.system_fingerprint, + ) + # Get the usage + if hasattr(result, "usage") and result.usage is not None: + usage = result.usage + set_usage_attributes(span, dict(usage)) + span.set_status(StatusCode.OK) span.end() + return result + else: + return handle_streaming_response(result, span) # return the wrapped method return traced_method diff --git a/src/langtrace_python_sdk/instrumentation/chroma/patch.py b/src/langtrace_python_sdk/instrumentation/chroma/patch.py index 3e53157c..3142c0dd 100644 --- a/src/langtrace_python_sdk/instrumentation/chroma/patch.py +++ b/src/langtrace_python_sdk/instrumentation/chroma/patch.py @@ -15,7 +15,7 @@ """ from langtrace.trace_attributes import DatabaseSpanAttributes -from langtrace_python_sdk.utils.llm import set_span_attributes +from langtrace_python_sdk.utils import set_span_attribute from langtrace_python_sdk.utils.silently_fail import silently_fail from opentelemetry import baggage, trace from opentelemetry.trace import SpanKind @@ -119,20 +119,20 @@ def handle_null_params(param): @silently_fail def _set_chroma_add_attributes(span, kwargs): - set_span_attributes( + set_span_attribute( span, "db.chroma.add.ids_count", get_count_or_none(kwargs.get("ids")) ) - set_span_attributes( + set_span_attribute( span, "db.chroma.add.embeddings_count", get_count_or_none(kwargs.get("embeddings")), ) - set_span_attributes( + set_span_attribute( span, "db.chroma.add.metadatas_count", get_count_or_none(kwargs.get("metadatas")), ) - set_span_attributes( + set_span_attribute( span, "db.chroma.add.documents_count", get_count_or_none(kwargs.get("documents")), @@ -141,71 +141,71 @@ def _set_chroma_add_attributes(span, kwargs): @silently_fail def _set_chroma_get_attributes(span, kwargs): - set_span_attributes( + set_span_attribute( span, "db.chroma.get.ids_count", get_count_or_none(kwargs.get("ids")) ) - set_span_attributes( + set_span_attribute( span, "db.chroma.get.where", handle_null_params(kwargs.get("where")) ) - set_span_attributes(span, "db.chroma.get.limit", kwargs.get("limit")) - set_span_attributes(span, "db.chroma.get.offset", kwargs.get("offset")) - set_span_attributes( + set_span_attribute(span, "db.chroma.get.limit", kwargs.get("limit")) + set_span_attribute(span, "db.chroma.get.offset", kwargs.get("offset")) + set_span_attribute( span, "db.chroma.get.where_document", handle_null_params(kwargs.get("where_document")), ) - set_span_attributes( + set_span_attribute( span, "db.chroma.get.include", handle_null_params(kwargs.get("include")) ) @silently_fail def _set_chroma_query_attributes(span, kwargs): - set_span_attributes( + set_span_attribute( span, "db.chroma.query.query_embeddings_count", get_count_or_none(kwargs.get("query_embeddings")), ) - set_span_attributes( + set_span_attribute( span, "db.chroma.query.query_texts_count", get_count_or_none(kwargs.get("query_texts")), ) - set_span_attributes(span, "db.chroma.query.n_results", kwargs.get("n_results")) - set_span_attributes( + set_span_attribute(span, "db.chroma.query.n_results", kwargs.get("n_results")) + set_span_attribute( span, "db.chroma.query.where", handle_null_params(kwargs.get("where")) ) - set_span_attributes( + set_span_attribute( span, "db.chroma.query.where_document", handle_null_params(kwargs.get("where_document")), ) - set_span_attributes( + set_span_attribute( span, "db.chroma.query.include", handle_null_params(kwargs.get("include")) ) @silently_fail def _set_chroma_peek_attributes(span, kwargs): - set_span_attributes(span, "db.chroma.peek.limit", kwargs.get("limit")) + set_span_attribute(span, "db.chroma.peek.limit", kwargs.get("limit")) @silently_fail def _set_chroma_update_attributes(span, kwargs): - set_span_attributes( + set_span_attribute( span, "db.chroma.update.ids_count", get_count_or_none(kwargs.get("ids")) ) - set_span_attributes( + set_span_attribute( span, "db.chroma.update.embeddings_count", get_count_or_none(kwargs.get("embeddings")), ) - set_span_attributes( + set_span_attribute( span, "db.chroma.update.metadatas_count", get_count_or_none(kwargs.get("metadatas")), ) - set_span_attributes( + set_span_attribute( span, "db.chroma.update.documents_count", get_count_or_none(kwargs.get("documents")), @@ -214,23 +214,23 @@ def _set_chroma_update_attributes(span, kwargs): @silently_fail def _set_chroma_modify_attributes(span, kwargs): - set_span_attributes(span, "db.chroma.modify.name", kwargs.get("name")) + set_span_attribute(span, "db.chroma.modify.name", kwargs.get("name")) # TODO: Add metadata attribute @silently_fail def _set_chroma_upsert_attributes(span, kwargs): - set_span_attributes( + set_span_attribute( span, "db.chroma.upsert.embeddings_count", get_count_or_none(kwargs.get("embeddings")), ) - set_span_attributes( + set_span_attribute( span, "db.chroma.upsert.metadatas_count", get_count_or_none(kwargs.get("metadatas")), ) - set_span_attributes( + set_span_attribute( span, "db.chroma.upsert.documents_count", get_count_or_none(kwargs.get("documents")), @@ -239,13 +239,13 @@ def _set_chroma_upsert_attributes(span, kwargs): @silently_fail def _set_chroma_delete_attributes(span, kwargs): - set_span_attributes( + set_span_attribute( span, "db.chroma.delete.ids_count", get_count_or_none(kwargs.get("ids")) ) - set_span_attributes( + set_span_attribute( span, "db.chroma.delete.where", handle_null_params(kwargs.get("where")) ) - set_span_attributes( + set_span_attribute( span, "db.chroma.delete.where_document", handle_null_params(kwargs.get("where_document")), diff --git a/src/langtrace_python_sdk/instrumentation/cohere/patch.py b/src/langtrace_python_sdk/instrumentation/cohere/patch.py index febd5651..7fe72376 100644 --- a/src/langtrace_python_sdk/instrumentation/cohere/patch.py +++ b/src/langtrace_python_sdk/instrumentation/cohere/patch.py @@ -16,19 +16,24 @@ import json +from langtrace_python_sdk.utils.llm import ( + get_langtrace_attributes, + get_llm_request_attributes, + get_extra_attributes, + get_llm_url, + set_event_completion, + set_usage_attributes, +) from langtrace.trace_attributes import Event, LLMSpanAttributes -from opentelemetry import baggage +from langtrace_python_sdk.utils import set_span_attribute from opentelemetry.trace import SpanKind from opentelemetry.trace.status import Status, StatusCode from langtrace_python_sdk.constants.instrumentation.cohere import APIS from langtrace_python_sdk.constants.instrumentation.common import ( - LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY, SERVICE_PROVIDERS, ) -from importlib_metadata import version as v - -from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME +from langtrace.trace_attributes import SpanAttributes def rerank(original_method, version, tracer): @@ -36,35 +41,24 @@ def rerank(original_method, version, tracer): def traced_method(wrapped, instance, args, kwargs): service_provider = SERVICE_PROVIDERS["COHERE"] - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": APIS["RERANK"]["URL"], - "llm.api": APIS["RERANK"]["ENDPOINT"], - "llm.model": kwargs.get("model"), - "llm.prompts": "", - "llm.documents": json.dumps(kwargs.get("documents")), - "llm.retrieval.query": kwargs.get("query"), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes(kwargs), + **get_llm_url(instance), + SpanAttributes.LLM_REQUEST_MODEL: kwargs.get("model") or "command-r-plus", + SpanAttributes.LLM_URL: APIS["RERANK"]["URL"], + SpanAttributes.LLM_PATH: APIS["RERANK"]["ENDPOINT"], + SpanAttributes.LLM_REQUEST_DOCUMENTS: json.dumps(kwargs.get("documents")), + SpanAttributes.LLM_COHERE_RERANK_QUERY: kwargs.get("query"), + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) - if kwargs.get("top_n") is not None: - attributes.llm_top_k = kwargs.get("top_n") - - if kwargs.get("user") is not None: - attributes.llm_user = kwargs.get("user") - span = tracer.start_span(APIS["RERANK"]["METHOD"], kind=SpanKind.CLIENT) for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + set_span_attribute(span, field, value) try: # Attempt to call the original method result = wrapped(*args, **kwargs) @@ -73,10 +67,12 @@ def traced_method(wrapped, instance, args, kwargs): results = [] for _, doc in enumerate(result.results): results.append(doc.json()) - span.set_attribute("llm.retrieval.results", json.dumps(results)) + span.set_attribute( + SpanAttributes.LLM_COHERE_RERANK_RESULTS, json.dumps(results) + ) if (hasattr(result, "response_id")) and (result.response_id is not None): - span.set_attribute("llm.response_id", result.response_id) + span.set_attribute(SpanAttributes.LLM_RESPONSE_ID, result.response_id) if hasattr(result, "meta") and result.meta is not None: if ( @@ -85,30 +81,24 @@ def traced_method(wrapped, instance, args, kwargs): ): usage = result.meta.billed_units if usage is not None: - usage_dict = { - "input_tokens": ( - usage.input_tokens - if usage.input_tokens is not None - else 0 - ), - "output_tokens": ( - usage.output_tokens - if usage.output_tokens is not None - else 0 - ), - "total_tokens": ( - usage.input_tokens + usage.output_tokens - if usage.input_tokens is not None - and usage.output_tokens is not None - else 0 - ), - "search_units": ( - usage.search_units - if usage.search_units is not None - else 0 - ), - } - span.set_attribute("llm.token.counts", json.dumps(usage_dict)) + span.set_attribute( + SpanAttributes.LLM_USAGE_PROMPT_TOKENS, + usage.input_tokens or 0, + ) + span.set_attribute( + SpanAttributes.LLM_USAGE_COMPLETION_TOKENS, + usage.output_tokens or 0, + ) + + span.set_attribute( + SpanAttributes.LLM_USAGE_TOTAL_TOKENS, + (usage.input_tokens or 0) + (usage.output_tokens or 0), + ) + + span.set_attribute( + "search_units", + usage.search_units or 0, + ) span.set_status(StatusCode.OK) span.end() @@ -128,34 +118,27 @@ def embed(original_method, version, tracer): def traced_method(wrapped, instance, args, kwargs): service_provider = SERVICE_PROVIDERS["COHERE"] - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": APIS["EMBED"]["URL"], - "llm.api": APIS["EMBED"]["ENDPOINT"], - "llm.model": kwargs.get("model"), - "llm.prompts": "", - "llm.embedding_inputs": json.dumps(kwargs.get("texts")), - "llm.embedding_dataset_id": kwargs.get("dataset_id"), - "llm.embedding_input_type": kwargs.get("input_type"), - "llm.embedding_job_name": kwargs.get("name"), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes(kwargs), + **get_llm_url(instance), + SpanAttributes.LLM_URL: APIS["EMBED"]["URL"], + SpanAttributes.LLM_PATH: APIS["EMBED"]["ENDPOINT"], + SpanAttributes.LLM_REQUEST_EMBEDDING_INPUTS: json.dumps( + kwargs.get("texts") + ), + SpanAttributes.LLM_REQUEST_EMBEDDING_DATASET_ID: kwargs.get("dataset_id"), + SpanAttributes.LLM_REQUEST_EMBEDDING_INPUT_TYPE: kwargs.get("input_type"), + SpanAttributes.LLM_REQUEST_EMBEDDING_JOB_NAME: kwargs.get("name"), + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) - if kwargs.get("user") is not None: - attributes.llm_user = kwargs.get("user") - span = tracer.start_span(APIS["EMBED"]["METHOD"], kind=SpanKind.CLIENT) for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + set_span_attribute(span, field, value) try: # Attempt to call the original method result = wrapped(*args, **kwargs) @@ -166,31 +149,7 @@ def traced_method(wrapped, instance, args, kwargs): and result.meta.billed_units is not None ): usage = result.meta.billed_units - if usage is not None: - usage_dict = { - "input_tokens": ( - usage.input_tokens - if usage.input_tokens is not None - else 0 - ), - "output_tokens": ( - usage.output_tokens - if usage.output_tokens is not None - else 0 - ), - "total_tokens": ( - usage.input_tokens + usage.output_tokens - if usage.input_tokens is not None - and usage.output_tokens is not None - else 0 - ), - "search_units": ( - usage.search_units - if usage.search_units is not None - else 0 - ), - } - span.set_attribute("llm.token.counts", json.dumps(usage_dict)) + set_usage_attributes(span, dict(usage)) span.set_status(StatusCode.OK) span.end() @@ -212,7 +171,7 @@ def traced_method(wrapped, instance, args, kwargs): service_provider = SERVICE_PROVIDERS["COHERE"] message = kwargs.get("message", "") - prompts = [{"role": "USER", "content": message}] + prompts = [{"role": "user", "content": message}] system_prompts = [] history = [] preamble = kwargs.get("preamble") @@ -224,7 +183,7 @@ def traced_method(wrapped, instance, args, kwargs): history = [ { "role": ( - item.get("role") if item.get("role") is not None else "USER" + item.get("role") if item.get("role") is not None else "user" ), "content": ( item.get("message") if item.get("message") is not None else "" @@ -236,48 +195,25 @@ def traced_method(wrapped, instance, args, kwargs): prompts = history + prompts if len(system_prompts) > 0: prompts = system_prompts + prompts - prompts = json.dumps(prompts) - - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": APIS["CHAT_CREATE"]["URL"], - "llm.api": APIS["CHAT_CREATE"]["ENDPOINT"], - "llm.model": ( - kwargs.get("model") if kwargs.get("model") is not None else "command-r" - ), - "llm.stream": False, - "llm.prompts": prompts, - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes(kwargs, prompts=prompts), + **get_llm_url(instance), + SpanAttributes.LLM_REQUEST_MODEL: kwargs.get("model") or "command-r-plus", + SpanAttributes.LLM_URL: APIS["CHAT_CREATE"]["URL"], + SpanAttributes.LLM_PATH: APIS["CHAT_CREATE"]["ENDPOINT"], + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) - if kwargs.get("temperature") is not None: - attributes.llm_temperature = kwargs.get("temperature") - if kwargs.get("max_tokens") is not None: - attributes.llm_max_tokens = str(kwargs.get("max_tokens")) if kwargs.get("max_input_tokens") is not None: attributes.llm_max_input_tokens = str(kwargs.get("max_input_tokens")) - if kwargs.get("p") is not None: - attributes.llm_top_p = kwargs.get("p") - if kwargs.get("k") is not None: - attributes.llm_top_k = kwargs.get("k") - if kwargs.get("user") is not None: - attributes.llm_user = kwargs.get("user") + if kwargs.get("conversation_id") is not None: attributes.conversation_id = kwargs.get("conversation_id") - if kwargs.get("seed") is not None: - attributes.seed = kwargs.get("seed") - if kwargs.get("frequency_penalty") is not None: - attributes.frequency_penalty = kwargs.get("frequency_penalty") - if kwargs.get("presence_penalty") is not None: - attributes.presence_penalty = kwargs.get("presence_penalty") + if kwargs.get("connectors") is not None: # stringify the list of objects attributes.llm_connectors = json.dumps(kwargs.get("connectors")) @@ -292,8 +228,7 @@ def traced_method(wrapped, instance, args, kwargs): # Set the attributes on the span for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + set_span_attribute(span, field, value) try: # Attempt to call the original method result = wrapped(*args, **kwargs) @@ -302,13 +237,18 @@ def traced_method(wrapped, instance, args, kwargs): if (hasattr(result, "generation_id")) and ( result.generation_id is not None ): - span.set_attribute("llm.generation_id", result.generation_id) + span.set_attribute( + SpanAttributes.LLM_GENERATION_ID, result.generation_id + ) if (hasattr(result, "response_id")) and (result.response_id is not None): - span.set_attribute("llm.response_id", result.response_id) + span.set_attribute(SpanAttributes.LLM_RESPONSE_ID, result.response_id) if (hasattr(result, "is_search_required")) and ( result.is_search_required is not None ): - span.set_attribute("llm.is_search_required", result.is_search_required) + span.set_attribute( + SpanAttributes.LLM_REQUEST_SEARCH_REQUIRED, + result.is_search_required, + ) if kwargs.get("stream") is False or kwargs.get("stream") is None: if ( @@ -325,7 +265,7 @@ def traced_method(wrapped, instance, args, kwargs): "role": ( item.role if hasattr(item, "role") and item.role is not None - else "USER" + else "user" ), "content": ( item.message @@ -336,19 +276,19 @@ def traced_method(wrapped, instance, args, kwargs): } for item in result.chat_history ] - span.set_attribute("llm.responses", json.dumps(responses)) + set_event_completion(span, responses) + else: responses = [{"role": "CHATBOT", "content": result.text}] - span.set_attribute("llm.responses", json.dumps(responses)) + set_event_completion(span, responses) + elif hasattr(result, "tool_calls") and result.tool_calls is not None: tool_calls = [] for tool_call in result.tool_calls: tool_calls.append(tool_call.json()) - span.set_attribute("llm.tool_calls", json.dumps(tool_calls)) - span.set_attribute("llm.responses", json.dumps([])) - else: - responses = [] - span.set_attribute("llm.responses", json.dumps(responses)) + span.set_attribute( + SpanAttributes.LLM_TOOL_RESULTS, json.dumps(tool_calls) + ) # Get the usage if hasattr(result, "meta") and result.meta is not None: @@ -358,31 +298,23 @@ def traced_method(wrapped, instance, args, kwargs): ): usage = result.meta.billed_units if usage is not None: - usage_dict = { - "input_tokens": ( - usage.input_tokens - if usage.input_tokens is not None - else 0 - ), - "output_tokens": ( - usage.output_tokens - if usage.output_tokens is not None - else 0 - ), - "total_tokens": ( - usage.input_tokens + usage.output_tokens - if usage.input_tokens is not None - and usage.output_tokens is not None - else 0 - ), - "search_units": ( - usage.search_units - if usage.search_units is not None - else 0 - ), - } span.set_attribute( - "llm.token.counts", json.dumps(usage_dict) + SpanAttributes.LLM_USAGE_PROMPT_TOKENS, + usage.input_tokens or 0, + ) + span.set_attribute( + SpanAttributes.LLM_USAGE_COMPLETION_TOKENS, + usage.output_tokens or 0, + ) + + span.set_attribute( + SpanAttributes.LLM_USAGE_TOTAL_TOKENS, + (usage.input_tokens or 0) + (usage.output_tokens or 0), + ) + + span.set_attribute( + "search_units", + usage.search_units or 0, ) span.set_status(StatusCode.OK) span.end() @@ -407,7 +339,7 @@ def traced_method(wrapped, instance, args, kwargs): service_provider = SERVICE_PROVIDERS["COHERE"] message = kwargs.get("message", "") - prompts = [{"role": "USER", "content": message}] + prompts = [{"role": "user", "content": message}] system_prompts = [] history = [] preamble = kwargs.get("preamble") @@ -419,7 +351,7 @@ def traced_method(wrapped, instance, args, kwargs): history = [ { "role": ( - item.get("role") if item.get("role") is not None else "USER" + item.get("role") if item.get("role") is not None else "user" ), "content": ( item.get("message") if item.get("message") is not None else "" @@ -431,48 +363,23 @@ def traced_method(wrapped, instance, args, kwargs): prompts = history + prompts if len(system_prompts) > 0: prompts = system_prompts + prompts - prompts = json.dumps(prompts) - - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": APIS["CHAT_STREAM"]["URL"], - "llm.api": APIS["CHAT_STREAM"]["ENDPOINT"], - "llm.model": ( - kwargs.get("model") if kwargs.get("model") is not None else "command-r" - ), - "llm.stream": True, - "llm.prompts": prompts, - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes(kwargs, prompts=prompts), + **get_llm_url(instance), + SpanAttributes.LLM_REQUEST_MODEL: kwargs.get("model") or "command-r-plus", + SpanAttributes.LLM_IS_STREAMING: True, + SpanAttributes.LLM_URL: APIS["CHAT_STREAM"]["URL"], + SpanAttributes.LLM_PATH: APIS["CHAT_STREAM"]["ENDPOINT"], + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) - if kwargs.get("temperature") is not None: - attributes.llm_temperature = kwargs.get("temperature") - if kwargs.get("max_tokens") is not None: - attributes.llm_max_tokens = str(kwargs.get("max_tokens")) if kwargs.get("max_input_tokens") is not None: attributes.llm_max_input_tokens = str(kwargs.get("max_input_tokens")) - if kwargs.get("p") is not None: - attributes.llm_top_p = kwargs.get("p") - if kwargs.get("k") is not None: - attributes.llm_top_k = kwargs.get("k") - if kwargs.get("user") is not None: - attributes.llm_user = kwargs.get("user") - if kwargs.get("conversation_id") is not None: - attributes.conversation_id = kwargs.get("conversation_id") - if kwargs.get("seed") is not None: - attributes.seed = kwargs.get("seed") - if kwargs.get("frequency_penalty") is not None: - attributes.frequency_penalty = kwargs.get("frequency_penalty") - if kwargs.get("presence_penalty") is not None: - attributes.presence_penalty = kwargs.get("presence_penalty") + if kwargs.get("connectors") is not None: # stringify the list of objects attributes.llm_connectors = json.dumps(kwargs.get("connectors")) @@ -485,8 +392,7 @@ def traced_method(wrapped, instance, args, kwargs): span = tracer.start_span(APIS["CHAT_STREAM"]["METHOD"], kind=SpanKind.CLIENT) for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + set_span_attribute(span, field, value) try: # Attempt to call the original method result = wrapped(*args, **kwargs) @@ -498,7 +404,8 @@ def traced_method(wrapped, instance, args, kwargs): else: content = "" span.add_event( - Event.STREAM_OUTPUT.value, {"response": "".join(content)} + Event.STREAM_OUTPUT.value, + {SpanAttributes.LLM_CONTENT_COMPLETION_CHUNK: "".join(content)}, ) if ( @@ -506,22 +413,26 @@ def traced_method(wrapped, instance, args, kwargs): and event.finish_reason == "COMPLETE" ): response = event.response - if (hasattr(response, "generation_id")) and ( response.generation_id is not None ): span.set_attribute( - "llm.generation_id", response.generation_id + SpanAttributes.LLM_GENERATION_ID, + response.generation_id, ) if (hasattr(response, "response_id")) and ( response.response_id is not None ): - span.set_attribute("llm.response_id", response.response_id) + span.set_attribute( + SpanAttributes.LLM_RESPONSE_ID, + response.response_id, + ) if (hasattr(response, "is_search_required")) and ( response.is_search_required is not None ): span.set_attribute( - "llm.is_search_required", response.is_search_required + SpanAttributes.LLM_REQUEST_SEARCH_REQUIRED, + response.is_search_required, ) # Set the response attributes @@ -536,7 +447,7 @@ def traced_method(wrapped, instance, args, kwargs): item.role if hasattr(item, "role") and item.role is not None - else "USER" + else "user" ), "content": ( item.message @@ -547,16 +458,13 @@ def traced_method(wrapped, instance, args, kwargs): } for item in response.chat_history ] - span.set_attribute( - "llm.responses", json.dumps(responses) - ) + set_event_completion(span, responses) + else: responses = [ {"role": "CHATBOT", "content": response.text} ] - span.set_attribute( - "llm.responses", json.dumps(responses) - ) + set_event_completion(span, responses) # Get the usage if hasattr(response, "meta") and response.meta is not None: @@ -566,31 +474,24 @@ def traced_method(wrapped, instance, args, kwargs): ): usage = response.meta.billed_units if usage is not None: - usage_dict = { - "input_tokens": ( - usage.input_tokens - if usage.input_tokens is not None - else 0 - ), - "output_tokens": ( - usage.output_tokens - if usage.output_tokens is not None - else 0 - ), - "total_tokens": ( - usage.input_tokens + usage.output_tokens - if usage.input_tokens is not None - and usage.output_tokens is not None - else 0 - ), - "search_units": ( - usage.search_units - if usage.search_units is not None - else 0 - ), - } span.set_attribute( - "llm.token.counts", json.dumps(usage_dict) + SpanAttributes.LLM_USAGE_PROMPT_TOKENS, + usage.input_tokens or 0, + ) + span.set_attribute( + SpanAttributes.LLM_USAGE_COMPLETION_TOKENS, + usage.output_tokens or 0, + ) + + span.set_attribute( + SpanAttributes.LLM_USAGE_TOTAL_TOKENS, + (usage.input_tokens or 0) + + (usage.output_tokens or 0), + ) + + span.set_attribute( + "search_units", + usage.search_units or 0, ) yield event diff --git a/src/langtrace_python_sdk/instrumentation/gemini/__init__.py b/src/langtrace_python_sdk/instrumentation/gemini/__init__.py new file mode 100644 index 00000000..9c919fd4 --- /dev/null +++ b/src/langtrace_python_sdk/instrumentation/gemini/__init__.py @@ -0,0 +1,3 @@ +from .instrumentation import GeminiInstrumentation + +__all__ = ["GeminiInstrumentation"] diff --git a/src/langtrace_python_sdk/instrumentation/gemini/instrumentation.py b/src/langtrace_python_sdk/instrumentation/gemini/instrumentation.py new file mode 100644 index 00000000..675a049d --- /dev/null +++ b/src/langtrace_python_sdk/instrumentation/gemini/instrumentation.py @@ -0,0 +1,36 @@ +from typing import Collection +from importlib_metadata import version as v +from langtrace_python_sdk.constants.instrumentation.gemini import APIS +from wrapt import wrap_function_wrapper as _W +from opentelemetry.instrumentation.instrumentor import BaseInstrumentor +from opentelemetry.trace import get_tracer +from .patch import patch_gemini, apatch_gemini + + +class GeminiInstrumentation(BaseInstrumentor): + def instrumentation_dependencies(self) -> Collection[str]: + return ["google-generativeai >= 0.5.0"] + + def _instrument(self, **kwargs): + trace_provider = kwargs.get("tracer_provider") + tracer = get_tracer(__name__, "", trace_provider) + version = v("google-cloud-aiplatform") + + for _, api_config in APIS.items(): + module = api_config.get("module") + operation = api_config.get("operation") + method = api_config.get("method") + name = f"{method}.{operation}" + + _W( + module=module, + name=name, + wrapper=( + apatch_gemini(name, version, tracer) + if operation == "generate_content_async" + else patch_gemini(name, version, tracer) + ), + ) + + def _uninstrument(self, **kwargs): + pass diff --git a/src/langtrace_python_sdk/instrumentation/gemini/patch.py b/src/langtrace_python_sdk/instrumentation/gemini/patch.py new file mode 100644 index 00000000..b4b9b799 --- /dev/null +++ b/src/langtrace_python_sdk/instrumentation/gemini/patch.py @@ -0,0 +1,186 @@ +from langtrace.trace_attributes import LLMSpanAttributes, SpanAttributes +from opentelemetry import trace +from opentelemetry.trace import Span, SpanKind, Tracer +from opentelemetry.trace.propagation import set_span_in_context +from opentelemetry.trace.status import Status, StatusCode + +from langtrace_python_sdk.constants.instrumentation.common import SERVICE_PROVIDERS +from langtrace_python_sdk.utils.llm import ( + get_extra_attributes, + get_langtrace_attributes, + get_llm_request_attributes, + get_llm_url, + is_streaming, + set_event_completion, + set_event_completion_chunk, + set_span_attributes, + set_usage_attributes, +) + + +def patch_gemini(name, version, tracer: Tracer): + def traced_method(wrapped, instance, args, kwargs): + service_provider = SERVICE_PROVIDERS["GEMINI"] + prompts = serialize_prompts(args, kwargs, instance) + span_attributes = { + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes( + kwargs, + prompts=prompts, + model=get_llm_model(instance), + ), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: "", + **get_extra_attributes(), + } + attributes = LLMSpanAttributes(**span_attributes) + span = tracer.start_span( + name=name, + kind=SpanKind.CLIENT, + context=set_span_in_context(trace.get_current_span()), + ) + + try: + set_span_attributes(span, attributes) + result = wrapped(*args, **kwargs) + if is_streaming(kwargs): + return build_streaming_response(span, result) + + else: + set_response_attributes(span, result) + span.end() + return result + except Exception as error: + span.record_exception(error) + span.set_status(Status(StatusCode.ERROR, str(error))) + span.end() + raise + + return traced_method + + +def apatch_gemini(name, version, tracer: Tracer): + async def traced_method(wrapped, instance, args, kwargs): + service_provider = SERVICE_PROVIDERS["GEMINI"] + prompts = serialize_prompts(args, kwargs, instance) + span_attributes = { + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes( + kwargs, + prompts=prompts, + model=get_llm_model(instance), + ), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: "", + **get_extra_attributes(), + } + attributes = LLMSpanAttributes(**span_attributes) + span = tracer.start_span( + name=name, + kind=SpanKind.CLIENT, + context=set_span_in_context(trace.get_current_span()), + ) + + try: + set_span_attributes(span, attributes) + result = await wrapped(*args, **kwargs) + if is_streaming(kwargs): + return abuild_streaming_response(span, result) + else: + set_response_attributes(span, result) + span.end() + return result + except Exception as error: + span.record_exception(error) + span.set_status(Status(StatusCode.ERROR, str(error))) + span.end() + raise + + return traced_method + + +def get_llm_model(instance): + llm_model = "unknown" + if hasattr(instance, "_model_id"): + llm_model = instance._model_id + if hasattr(instance, "_model_name"): + llm_model = instance._model_name.replace("models/", "") + return llm_model + + +def serialize_prompts(args, kwargs, instance): + prompts = [] + if hasattr(instance, "_system_instruction") and instance._system_instruction is not None: + system_prompt = { + "role": "system", + "content": instance._system_instruction.__dict__["_pb"].parts[0].text, + } + prompts.append(system_prompt) + + if args is not None and len(args) > 0: + content = "" + for arg in args: + if isinstance(arg, str): + content = f"{content}{arg}\n" + elif isinstance(arg, list): + for subarg in arg: + content = f"{content}{subarg}\n" + prompts.append({"role": "user", "content": content}) + return prompts + + +def set_response_attributes( + span: Span, + result, +): + span.set_status(Status(StatusCode.OK)) + if hasattr(result, "text"): + set_event_completion(span, [{"role": "assistant", "content": result.text}]) + + if hasattr(result, "usage_metadata"): + usage = result.usage_metadata + input_tokens = usage.prompt_token_count + output_tokens = usage.candidates_token_count + set_usage_attributes( + span, {"input_tokens": input_tokens, "output_tokens": output_tokens} + ) + + +def build_streaming_response(span, response): + complete_response = "" + for item in response: + item_to_yield = item + complete_response += str(item.text) + yield item_to_yield + set_event_completion_chunk(span, item.text) + if hasattr(item, "usage_metadata"): + usage = item.usage_metadata + input_tokens = usage.prompt_token_count + output_tokens = usage.candidates_token_count + set_usage_attributes( + span, {"input_tokens": input_tokens, "output_tokens": output_tokens} + ) + + set_response_attributes(span, response) + span.set_status(Status(StatusCode.OK)) + span.end() + + +async def abuild_streaming_response(span, response): + complete_response = "" + async for item in response: + item_to_yield = item + complete_response += str(item.text) + yield item_to_yield + set_event_completion_chunk(span, item.text) + if hasattr(item, "usage_metadata"): + usage = item.usage_metadata + input_tokens = usage.prompt_token_count + output_tokens = usage.candidates_token_count + set_usage_attributes( + span, {"input_tokens": input_tokens, "output_tokens": output_tokens} + ) + + set_response_attributes(span, response) + span.set_status(Status(StatusCode.OK)) + span.end() diff --git a/src/langtrace_python_sdk/instrumentation/groq/patch.py b/src/langtrace_python_sdk/instrumentation/groq/patch.py index 37599ee1..82f345e6 100644 --- a/src/langtrace_python_sdk/instrumentation/groq/patch.py +++ b/src/langtrace_python_sdk/instrumentation/groq/patch.py @@ -17,11 +17,21 @@ import json from langtrace.trace_attributes import Event, LLMSpanAttributes +from langtrace_python_sdk.utils import set_span_attribute from opentelemetry import baggage, trace from opentelemetry.trace.propagation import set_span_in_context from opentelemetry.trace import SpanKind from opentelemetry.trace.status import Status, StatusCode +from langtrace_python_sdk.utils.llm import ( + get_base_url, + get_extra_attributes, + get_llm_request_attributes, + get_llm_url, + get_langtrace_attributes, + set_event_completion, + set_usage_attributes, +) from langtrace_python_sdk.constants.instrumentation.common import ( LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY, SERVICE_PROVIDERS, @@ -31,26 +41,20 @@ from importlib_metadata import version as v from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME +from langtrace.trace_attributes import SpanAttributes def chat_completions_create(original_method, version, tracer): """Wrap the `create` method of the `ChatCompletion` class to trace it.""" def traced_method(wrapped, instance, args, kwargs): - base_url = ( - str(instance._client._base_url) - if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") - else "" - ) service_provider = SERVICE_PROVIDERS["GROQ"] # If base url contains perplexity or azure, set the service provider accordingly - if "perplexity" in base_url: + if "perplexity" in get_base_url(instance): service_provider = SERVICE_PROVIDERS["PPLX"] - elif "azure" in base_url: + elif "azure" in get_base_url(instance): service_provider = SERVICE_PROVIDERS["AZURE"] - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) - # handle tool calls in the kwargs llm_prompts = [] for item in kwargs.get("messages", []): @@ -80,27 +84,16 @@ def traced_method(wrapped, instance, args, kwargs): llm_prompts.append(item) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": base_url, - "llm.api": APIS["CHAT_COMPLETION"]["ENDPOINT"], - "llm.prompts": json.dumps(llm_prompts), - "llm.stream": kwargs.get("stream"), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes(kwargs, prompts=llm_prompts), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: APIS["CHAT_COMPLETION"]["ENDPOINT"], + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) tools = [] - if kwargs.get("temperature") is not None: - attributes.llm_temperature = kwargs.get("temperature") - if kwargs.get("top_p") is not None: - attributes.llm_top_p = kwargs.get("top_p") - if kwargs.get("user") is not None: - attributes.llm_user = kwargs.get("user") if kwargs.get("functions") is not None: for function in kwargs.get("functions"): tools.append(json.dumps({"type": "function", "function": function})) @@ -111,20 +104,21 @@ def traced_method(wrapped, instance, args, kwargs): # TODO(Karthik): Gotta figure out how to handle streaming with context # with tracer.start_as_current_span(APIS["CHAT_COMPLETION"]["METHOD"], - # kind=SpanKind.CLIENT) as span: + # kind=SpanKind.CLIENT.value) as span: span = tracer.start_span( APIS["CHAT_COMPLETION"]["METHOD"], - kind=SpanKind.CLIENT, + kind=SpanKind.CLIENT.value, context=set_span_in_context(trace.get_current_span()), ) for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + set_span_attribute(span, field, value) try: # Attempt to call the original method result = wrapped(*args, **kwargs) if kwargs.get("stream") is False or kwargs.get("stream") is None: - span.set_attribute("llm.model", result.model) + set_span_attribute( + span, SpanAttributes.LLM_RESPONSE_MODEL, result.model + ) if hasattr(result, "choices") and result.choices is not None: responses = [ { @@ -146,27 +140,23 @@ def traced_method(wrapped, instance, args, kwargs): } for choice in result.choices ] - span.set_attribute("llm.responses", json.dumps(responses)) - else: - responses = [] - span.set_attribute("llm.responses", json.dumps(responses)) + set_event_completion(span, responses) + if ( hasattr(result, "system_fingerprint") and result.system_fingerprint is not None ): - span.set_attribute( - "llm.system.fingerprint", result.system_fingerprint + set_span_attribute( + span, + SpanAttributes.LLM_SYSTEM_FINGERPRINT, + result.system_fingerprint, ) + # Get the usage if hasattr(result, "usage") and result.usage is not None: usage = result.usage - if usage is not None: - usage_dict = { - "input_tokens": result.usage.prompt_tokens, - "output_tokens": usage.completion_tokens, - "total_tokens": usage.total_tokens, - } - span.set_attribute("llm.token.counts", json.dumps(usage_dict)) + set_usage_attributes(span, dict(usage)) + span.set_status(StatusCode.OK) span.end() return result @@ -255,7 +245,7 @@ def handle_streaming_response( span.add_event( Event.STREAM_OUTPUT.value, { - "response": ( + SpanAttributes.LLM_CONTENT_COMPLETION_CHUNK: ( "".join(content) if len(content) > 0 and content[0] is not None else "" @@ -267,27 +257,14 @@ def handle_streaming_response( finally: # Finalize span after processing all chunks span.add_event(Event.STREAM_END.value) - span.set_attribute( - "llm.token.counts", - json.dumps( - { - "input_tokens": prompt_tokens, - "output_tokens": completion_tokens, - "total_tokens": prompt_tokens + completion_tokens, - } - ), + set_usage_attributes( + span, + {"input_tokens": prompt_tokens, "output_tokens": completion_tokens}, ) - span.set_attribute( - "llm.responses", - json.dumps( - [ - { - "role": "assistant", - "content": "".join(result_content), - } - ] - ), + set_event_completion( + span, [{"role": "assistant", "content": "".join(result_content)}] ) + span.set_status(StatusCode.OK) span.end() @@ -299,20 +276,13 @@ def async_chat_completions_create(original_method, version, tracer): """Wrap the `create` method of the `ChatCompletion` class to trace it.""" async def traced_method(wrapped, instance, args, kwargs): - base_url = ( - str(instance._client._base_url) - if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") - else "" - ) service_provider = SERVICE_PROVIDERS["GROQ"] # If base url contains perplexity or azure, set the service provider accordingly - if "perplexity" in base_url: + if "perplexity" in get_base_url(instance): service_provider = SERVICE_PROVIDERS["PPLX"] - elif "azure" in base_url: + elif "azure" in get_base_url(instance): service_provider = SERVICE_PROVIDERS["AZURE"] - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) - # handle tool calls in the kwargs llm_prompts = [] for item in kwargs.get("messages", []): @@ -342,27 +312,17 @@ async def traced_method(wrapped, instance, args, kwargs): llm_prompts.append(item) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": base_url, - "llm.api": APIS["CHAT_COMPLETION"]["ENDPOINT"], - "llm.prompts": json.dumps(llm_prompts), - "llm.stream": kwargs.get("stream"), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes(kwargs, prompts=llm_prompts), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: APIS["CHAT_COMPLETION"]["ENDPOINT"], + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) tools = [] - if kwargs.get("temperature") is not None: - attributes.llm_temperature = kwargs.get("temperature") - if kwargs.get("top_p") is not None: - attributes.llm_top_p = kwargs.get("top_p") - if kwargs.get("user") is not None: - attributes.llm_user = kwargs.get("user") + if kwargs.get("functions") is not None: for function in kwargs.get("functions"): tools.append(json.dumps({"type": "function", "function": function})) @@ -373,18 +333,19 @@ async def traced_method(wrapped, instance, args, kwargs): # TODO(Karthik): Gotta figure out how to handle streaming with context # with tracer.start_as_current_span(APIS["CHAT_COMPLETION"]["METHOD"], - # kind=SpanKind.CLIENT) as span: + # kind=SpanKind.CLIENT.value) as span: span = tracer.start_span( - APIS["CHAT_COMPLETION"]["METHOD"], kind=SpanKind.CLIENT + APIS["CHAT_COMPLETION"]["METHOD"], kind=SpanKind.CLIENT.value ) for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + set_span_attribute(span, field, value) try: # Attempt to call the original method result = await wrapped(*args, **kwargs) if kwargs.get("stream") is False or kwargs.get("stream") is None: - span.set_attribute("llm.model", result.model) + set_span_attribute( + span, SpanAttributes.LLM_RESPONSE_MODEL, result.model + ) if hasattr(result, "choices") and result.choices is not None: responses = [ { @@ -406,27 +367,25 @@ async def traced_method(wrapped, instance, args, kwargs): } for choice in result.choices ] - span.set_attribute("llm.responses", json.dumps(responses)) - else: - responses = [] - span.set_attribute("llm.responses", json.dumps(responses)) + + set_event_completion(span, responses) + if ( hasattr(result, "system_fingerprint") and result.system_fingerprint is not None ): - span.set_attribute( - "llm.system.fingerprint", result.system_fingerprint + set_span_attribute( + span, + SpanAttributes.LLM_SYSTEM_FINGERPRINT, + result.system_fingerprint, ) + # Get the usage if hasattr(result, "usage") and result.usage is not None: usage = result.usage if usage is not None: - usage_dict = { - "input_tokens": result.usage.prompt_tokens, - "output_tokens": usage.completion_tokens, - "total_tokens": usage.total_tokens, - } - span.set_attribute("llm.token.counts", json.dumps(usage_dict)) + set_usage_attributes(span, dict(usage)) + span.set_status(StatusCode.OK) span.end() return result @@ -469,6 +428,9 @@ async def ahandle_streaming_response( try: async for chunk in result: if hasattr(chunk, "model") and chunk.model is not None: + set_span_attribute( + span, SpanAttributes.LLM_RESPONSE_MODEL, chunk.model + ) span.set_attribute("llm.model", chunk.model) if hasattr(chunk, "choices") and chunk.choices is not None: if not function_call and not tool_calls: @@ -513,9 +475,9 @@ async def ahandle_streaming_response( else: content = [] span.add_event( - Event.STREAM_OUTPUT.value, + Event.RESPONSE.value, { - "response": ( + SpanAttributes.LLM_COMPLETIONS: ( "".join(content) if len(content) > 0 and content[0] is not None else "" @@ -527,27 +489,22 @@ async def ahandle_streaming_response( finally: # Finalize span after processing all chunks span.add_event(Event.STREAM_END.value) - span.set_attribute( - "llm.token.counts", - json.dumps( + + set_usage_attributes( + span, + {"input_tokens": prompt_tokens, "output_tokens": completion_tokens}, + ) + + set_event_completion( + span, + [ { - "input_tokens": prompt_tokens, - "output_tokens": completion_tokens, - "total_tokens": prompt_tokens + completion_tokens, + "role": "assistant", + "content": "".join(result_content), } - ), - ) - span.set_attribute( - "llm.responses", - json.dumps( - [ - { - "role": "assistant", - "content": "".join(result_content), - } - ] - ), + ], ) + span.set_status(StatusCode.OK) span.end() diff --git a/src/langtrace_python_sdk/instrumentation/ollama/patch.py b/src/langtrace_python_sdk/instrumentation/ollama/patch.py index e3a9feb4..584320e3 100644 --- a/src/langtrace_python_sdk/instrumentation/ollama/patch.py +++ b/src/langtrace_python_sdk/instrumentation/ollama/patch.py @@ -1,41 +1,35 @@ from langtrace_python_sdk.constants.instrumentation.ollama import APIS -from importlib_metadata import version as v -from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME from langtrace_python_sdk.utils import set_span_attribute -from langtrace_python_sdk.utils.silently_fail import silently_fail -from langtrace_python_sdk.constants.instrumentation.common import ( - LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY, - SERVICE_PROVIDERS, +from langtrace_python_sdk.utils.llm import ( + get_extra_attributes, + get_langtrace_attributes, + get_llm_request_attributes, + get_llm_url, + set_event_completion, ) -from opentelemetry import baggage +from langtrace_python_sdk.utils.silently_fail import silently_fail +from langtrace_python_sdk.constants.instrumentation.common import SERVICE_PROVIDERS from langtrace.trace_attributes import LLMSpanAttributes, Event from opentelemetry.trace import SpanKind import json from opentelemetry.trace.status import Status, StatusCode +from langtrace.trace_attributes import SpanAttributes def generic_patch(operation_name, version, tracer): def traced_method(wrapped, instance, args, kwargs): - base_url = ( - str(instance._client._base_url) - if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") - else "" - ) api = APIS[operation_name] service_provider = SERVICE_PROVIDERS["OLLAMA"] - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "llm.model": kwargs.get("model"), - "llm.stream": kwargs.get("stream"), - "url.full": base_url, - "llm.api": api["ENDPOINT"], - "llm.response_format": kwargs.get("format"), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes( + kwargs, + prompts=kwargs.get("messages", None), + ), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: api["ENDPOINT"], + SpanAttributes.LLM_RESPONSE_FORMAT: kwargs.get("format"), + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) @@ -77,24 +71,14 @@ def ageneric_patch(operation_name, version, tracer): async def traced_method(wrapped, instance, args, kwargs): api = APIS[operation_name] service_provider = SERVICE_PROVIDERS["OLLAMA"] - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "url.full": "", - "llm.api": "", - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "llm.model": kwargs.get("model"), - "llm.stream": kwargs.get("stream"), - "llm.response_format": kwargs.get("format"), - "http.timeout": ( - kwargs.get("keep_alive") if "keep_alive" in kwargs else None - ), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes(kwargs), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: api["ENDPOINT"], + SpanAttributes.LLM_RESPONSE_FORMAT: kwargs.get("format"), + **get_extra_attributes(), } - attributes = LLMSpanAttributes(**span_attributes) with tracer.start_as_current_span(api["METHOD"], kind=SpanKind.CLIENT) as span: _set_input_attributes(span, kwargs, attributes) @@ -130,23 +114,25 @@ def _set_response_attributes(span, response): input_tokens = response.get("prompt_eval_count") or 0 output_tokens = response.get("eval_count") or 0 total_tokens = input_tokens + output_tokens - usage_dict = { - "input_tokens": input_tokens, - "output_tokens": output_tokens, - "total_tokens": total_tokens, - } if total_tokens > 0: - set_span_attribute(span, "llm.token.counts", json.dumps(usage_dict)) - set_span_attribute(span, "llm.finish_reason", response.get("done_reason")) + set_span_attribute(span, SpanAttributes.LLM_USAGE_PROMPT_TOKENS, input_tokens) + set_span_attribute( + span, SpanAttributes.LLM_USAGE_COMPLETION_TOKENS, output_tokens + ) + set_span_attribute(span, SpanAttributes.LLM_USAGE_TOTAL_TOKENS, total_tokens) + + set_span_attribute( + span, + SpanAttributes.LLM_RESPONSE_FINISH_REASON, + response.get("done_reason"), + ) if "message" in response: - set_span_attribute(span, "llm.responses", json.dumps([response.get("message")])) + set_event_completion(span, [response.get("message")]) if "response" in response: - set_span_attribute( - span, - "llm.responses", - json.dumps([{"role": "assistant", "content": response.get("response")}]), + set_event_completion( + span, [{"role": "assistant", "content": response.get("response")}] ) @@ -156,26 +142,23 @@ def _set_input_attributes(span, kwargs, attributes): for field, value in attributes.model_dump(by_alias=True).items(): set_span_attribute(span, field, value) - if "messages" in kwargs: + + if "options" in kwargs: set_span_attribute( span, - "llm.prompts", - json.dumps(kwargs.get("messages", [])), + SpanAttributes.LLM_REQUEST_TEMPERATURE, + options.get("temperature"), ) - if "prompt" in kwargs: + set_span_attribute(span, SpanAttributes.LLM_REQUEST_TOP_P, options.get("top_p")) set_span_attribute( span, - "llm.prompts", - json.dumps([{"role": "user", "content": kwargs.get("prompt", "")}]), + SpanAttributes.LLM_FREQUENCY_PENALTY, + options.get("frequency_penalty"), ) - if "options" in kwargs: - set_span_attribute(span, "llm.temperature", options.get("temperature")) - set_span_attribute(span, "llm.top_p", options.get("top_p")) set_span_attribute( - span, "llm.frequency_penalty", options.get("frequency_penalty") - ) - set_span_attribute( - span, "llm.presence_penalty", options.get("presence_penalty") + span, + SpanAttributes.LLM_PRESENCE_PENALTY, + options.get("presence_penalty"), ) @@ -194,6 +177,14 @@ def _handle_streaming_response(span, response, api): if api == "generate": accumulated_tokens["response"] += chunk["response"] + span.add_event( + Event.STREAM_OUTPUT.value, + { + SpanAttributes.LLM_CONTENT_COMPLETION_CHUNK: chunk.get("response") + or chunk.get("message").get("content"), + }, + ) + _set_response_attributes(span, chunk | accumulated_tokens) finally: # Finalize span after processing all chunks @@ -220,6 +211,12 @@ async def _ahandle_streaming_response(span, response, api): if api == "generate": accumulated_tokens["response"] += chunk["response"] + span.add_event( + Event.STREAM_OUTPUT.value, + { + SpanAttributes.LLM_CONTENT_COMPLETION_CHUNK: json.dumps(chunk), + }, + ) _set_response_attributes(span, chunk | accumulated_tokens) finally: # Finalize span after processing all chunks diff --git a/src/langtrace_python_sdk/instrumentation/openai/patch.py b/src/langtrace_python_sdk/instrumentation/openai/patch.py index a9e261ec..e72e0441 100644 --- a/src/langtrace_python_sdk/instrumentation/openai/patch.py +++ b/src/langtrace_python_sdk/instrumentation/openai/patch.py @@ -16,22 +16,32 @@ import json -from importlib_metadata import version as v -from langtrace.trace_attributes import Event, LLMSpanAttributes -from opentelemetry import baggage, trace +from langtrace.trace_attributes import ( + LLMSpanAttributes, + SpanAttributes, +) +from langtrace_python_sdk.utils import set_span_attribute +from langtrace_python_sdk.utils.silently_fail import silently_fail +from opentelemetry import trace from opentelemetry.trace import SpanKind from opentelemetry.trace.status import Status, StatusCode from opentelemetry.trace.propagation import set_span_in_context -from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME from langtrace_python_sdk.constants.instrumentation.common import ( - LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY, SERVICE_PROVIDERS, ) from langtrace_python_sdk.constants.instrumentation.openai import APIS from langtrace_python_sdk.utils.llm import ( calculate_prompt_tokens, - estimate_tokens, + get_base_url, + get_extra_attributes, + get_langtrace_attributes, + get_llm_request_attributes, + get_llm_url, get_tool_calls, + is_streaming, + set_event_completion, + StreamWrapper, + set_span_attributes, ) from openai._types import NOT_GIVEN @@ -42,44 +52,27 @@ def images_generate(original_method, version, tracer): """ def traced_method(wrapped, instance, args, kwargs): - base_url = ( - str(instance._client._base_url) - if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") - else "" - ) service_provider = SERVICE_PROVIDERS["OPENAI"] - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) - span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": base_url, - "llm.api": APIS["IMAGES_GENERATION"]["ENDPOINT"], - "llm.model": kwargs.get("model"), - "llm.stream": kwargs.get("stream"), - "llm.prompts": json.dumps( - [{"role": "user", "content": kwargs.get("prompt", [])}] - ), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider, vendor_type="llm"), + **get_llm_request_attributes(kwargs), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: APIS["IMAGES_GENERATION"]["ENDPOINT"], + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) with tracer.start_as_current_span( APIS["IMAGES_GENERATION"]["METHOD"], - kind=SpanKind.CLIENT, + kind=SpanKind.CLIENT.value, context=set_span_in_context(trace.get_current_span()), ) as span: - for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + set_span_attributes(span, attributes) try: # Attempt to call the original method result = wrapped(*args, **kwargs) - if kwargs.get("stream") is False or kwargs.get("stream") is None: + if not is_streaming(kwargs): data = ( result.data[0] if hasattr(result, "data") and len(result.data) > 0 @@ -98,7 +91,7 @@ def traced_method(wrapped, instance, args, kwargs): }, } ] - span.set_attribute("llm.responses", json.dumps(response)) + set_event_completion(span, response) span.set_status(StatusCode.OK) return result @@ -121,45 +114,28 @@ def async_images_generate(original_method, version, tracer): """ async def traced_method(wrapped, instance, args, kwargs): - base_url = ( - str(instance._client._base_url) - if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") - else "" - ) service_provider = SERVICE_PROVIDERS["OPENAI"] - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": base_url, - "llm.api": APIS["IMAGES_GENERATION"]["ENDPOINT"], - "llm.model": kwargs.get("model"), - "llm.stream": kwargs.get("stream"), - "llm.prompts": json.dumps( - [{"role": "user", "content": kwargs.get("prompt", [])}] - ), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider, vendor_type="llm"), + **get_llm_request_attributes(kwargs), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: APIS["IMAGES_GENERATION"]["ENDPOINT"], + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) with tracer.start_as_current_span( APIS["IMAGES_GENERATION"]["METHOD"], - kind=SpanKind.CLIENT, + kind=SpanKind.CLIENT.value, context=set_span_in_context(trace.get_current_span()), ) as span: - items = attributes.model_dump(by_alias=True).items() - for field, value in items: - if value is not None: - span.set_attribute(field, value) + set_span_attributes(span, attributes) try: # Attempt to call the original method result = await wrapped(*args, **kwargs) - if kwargs.get("stream") is False or kwargs.get("stream") is None: + if not is_streaming(kwargs): data = ( result.data[0] if hasattr(result, "data") and len(result.data) > 0 @@ -178,7 +154,7 @@ async def traced_method(wrapped, instance, args, kwargs): }, } ] - span.set_attribute("llm.responses", json.dumps(response)) + set_event_completion(span, response) span.set_status(StatusCode.OK) return result @@ -201,47 +177,26 @@ def images_edit(original_method, version, tracer): """ def traced_method(wrapped, instance, args, kwargs): - base_url = ( - str(instance._client._base_url) - if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") - else "" - ) service_provider = SERVICE_PROVIDERS["OPENAI"] - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": base_url, - "llm.api": APIS["IMAGES_EDIT"]["ENDPOINT"], - "llm.model": kwargs.get("model"), - "llm.response_format": kwargs.get("response_format"), - "llm.image.size": kwargs.get("size"), - "llm.prompts": json.dumps( - [ - { - "role": kwargs.get("user", "user"), - "content": kwargs.get("prompt", []), - } - ] - ), - "llm.top_k": kwargs.get("n"), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider, vendor_type="llm"), + **get_llm_request_attributes(kwargs), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: APIS["IMAGES_EDIT"]["ENDPOINT"], + SpanAttributes.LLM_RESPONSE_FORMAT: kwargs.get("response_format"), + SpanAttributes.LLM_IMAGE_SIZE: kwargs.get("size"), + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) with tracer.start_as_current_span( APIS["IMAGES_EDIT"]["METHOD"], - kind=SpanKind.CLIENT, + kind=SpanKind.CLIENT.value, context=set_span_in_context(trace.get_current_span()), ) as span: - for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + set_span_attributes(span, attributes) try: # Attempt to call the original method result = wrapped(*args, **kwargs) @@ -260,10 +215,7 @@ def traced_method(wrapped, instance, args, kwargs): } ) - span.add_event( - name="response", - attributes={"llm.responses": json.dumps(response)}, - ) + set_event_completion(span, response) span.set_status(StatusCode.OK) return result @@ -280,158 +232,17 @@ def traced_method(wrapped, instance, args, kwargs): return traced_method -class StreamWrapper: - def __init__( - self, stream, span, prompt_tokens, function_call=False, tool_calls=False - ): - self.stream = stream - self.span = span - self.prompt_tokens = prompt_tokens - self.function_call = function_call - self.tool_calls = tool_calls - self.result_content = [] - self.completion_tokens = 0 - self._span_started = False - self._start_span() - - def _start_span(self): - if not self._span_started: - self.span.add_event(Event.STREAM_START.value) - self._span_started = True - - def _end_span(self): - if self._span_started: - self.span.add_event(Event.STREAM_END.value) - self.span.set_attribute( - "llm.token.counts", - json.dumps( - { - "input_tokens": self.prompt_tokens, - "output_tokens": self.completion_tokens, - "total_tokens": self.prompt_tokens + self.completion_tokens, - } - ), - ) - self.span.set_attribute( - "llm.responses", - json.dumps( - [ - { - "role": "assistant", - "content": "".join(self.result_content), - } - ] - ), - ) - self.span.set_status(StatusCode.OK) - self.span.end() - self._span_started = False - - def __enter__(self): - self._start_span() - return self - - def __exit__(self, exc_type, exc_val, exc_tb): - self._end_span() - - def __iter__(self): - self._start_span() - return self - - def __aiter__(self): - self._start_span() - return self - - async def __anext__(self): - try: - chunk = await self.stream.__anext__() - self.process_chunk(chunk) - return chunk - except StopIteration: - self._end_span() - raise - - def __next__(self): - try: - chunk = next(self.stream) - self.process_chunk(chunk) - return chunk - except StopIteration: - self._end_span() - raise - - def process_chunk(self, chunk): - if hasattr(chunk, "model") and chunk.model is not None: - self.span.set_attribute("llm.model", chunk.model) - if hasattr(chunk, "choices") and chunk.choices is not None: - content = [] - if not self.function_call and not self.tool_calls: - for choice in chunk.choices: - if choice.delta and choice.delta.content is not None: - token_counts = estimate_tokens(choice.delta.content) - self.completion_tokens += token_counts - content = [choice.delta.content] - elif self.function_call: - for choice in chunk.choices: - if ( - choice.delta - and choice.delta.function_call is not None - and choice.delta.function_call.arguments is not None - ): - token_counts = estimate_tokens( - choice.delta.function_call.arguments - ) - self.completion_tokens += token_counts - content = [choice.delta.function_call.arguments] - elif self.tool_calls: - for choice in chunk.choices: - if choice.delta and choice.delta.tool_calls is not None: - toolcalls = choice.delta.tool_calls - content = [] - for tool_call in toolcalls: - if ( - tool_call - and tool_call.function is not None - and tool_call.function.arguments is not None - ): - token_counts = estimate_tokens( - tool_call.function.arguments - ) - self.completion_tokens += token_counts - content.append(tool_call.function.arguments) - self.span.add_event( - Event.STREAM_OUTPUT.value, - { - "response": ( - "".join(content) - if len(content) > 0 and content[0] is not None - else "" - ) - }, - ) - if content: - self.result_content.append(content[0]) - - def chat_completions_create(original_method, version, tracer): """Wrap the `create` method of the `ChatCompletion` class to trace it.""" def traced_method(wrapped, instance, args, kwargs): - base_url = ( - str(instance._client._base_url) - if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") - else "" - ) service_provider = SERVICE_PROVIDERS["OPENAI"] - # If base url contains perplexity or azure, set the service provider accordingly - if "perplexity" in base_url: + if "perplexity" in get_base_url(instance): service_provider = SERVICE_PROVIDERS["PPLX"] - elif "azure" in base_url: + elif "azure" in get_base_url(instance): service_provider = SERVICE_PROVIDERS["AZURE"] - - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) - - # handle tool calls in the kwargs + elif "groq" in get_base_url(instance): + service_provider = SERVICE_PROVIDERS["GROQ"] llm_prompts = [] for item in kwargs.get("messages", []): tools = get_tool_calls(item) @@ -461,113 +272,31 @@ def traced_method(wrapped, instance, args, kwargs): llm_prompts.append(item) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": base_url, - "llm.api": APIS["CHAT_COMPLETION"]["ENDPOINT"], - "llm.prompts": json.dumps(llm_prompts), - "llm.stream": kwargs.get("stream"), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider, vendor_type="llm"), + **get_llm_request_attributes(kwargs, prompts=llm_prompts), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: APIS["CHAT_COMPLETION"]["ENDPOINT"], + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) - tools = [] - if ( - kwargs.get("temperature") is not None - and kwargs.get("temperature") != NOT_GIVEN - ): - attributes.llm_temperature = kwargs.get("temperature") - if kwargs.get("top_p") is not None and kwargs.get("top_p") != NOT_GIVEN: - attributes.llm_top_p = kwargs.get("top_p") - if kwargs.get("user") is not None and kwargs.get("user") != NOT_GIVEN: - attributes.llm_user = kwargs.get("user") - if kwargs.get("functions") is not None and kwargs.get("functions") != NOT_GIVEN: - for function in kwargs.get("functions"): - tools.append(json.dumps({"type": "function", "function": function})) - if kwargs.get("tools") is not None and kwargs.get("tools") != NOT_GIVEN: - tools.append(json.dumps(kwargs.get("tools"))) - if len(tools) > 0: - attributes.llm_tools = json.dumps(tools) - - # TODO(Karthik): Gotta figure out how to handle streaming with context - # with tracer.start_as_current_span(APIS["CHAT_COMPLETION"]["METHOD"], - # kind=SpanKind.CLIENT) as span: span = tracer.start_span( APIS["CHAT_COMPLETION"]["METHOD"], - kind=SpanKind.CLIENT, + kind=SpanKind.CLIENT.value, context=set_span_in_context(trace.get_current_span()), ) - for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + _set_input_attributes(span, kwargs, attributes) + try: - # Attempt to call the original method result = wrapped(*args, **kwargs) - if ( - kwargs.get("stream") is False - or kwargs.get("stream") is None - or kwargs.get("stream") == NOT_GIVEN - ): - span.set_attribute("llm.model", result.model) - if hasattr(result, "choices") and result.choices is not None: - responses = [ - { - "role": ( - choice.message.role - if choice.message and choice.message.role - else "assistant" - ), - "content": extract_content(choice), - **( - { - "content_filter_results": choice[ - "content_filter_results" - ] - } - if "content_filter_results" in choice - else {} - ), - } - for choice in result.choices - ] - span.set_attribute("llm.responses", json.dumps(responses)) - else: - responses = [] - span.set_attribute("llm.responses", json.dumps(responses)) - if ( - hasattr(result, "system_fingerprint") - and result.system_fingerprint is not None - and result.system_fingerprint != NOT_GIVEN - ): - span.set_attribute( - "llm.system.fingerprint", result.system_fingerprint - ) - # Get the usage - if hasattr(result, "usage") and result.usage is not None: - usage = result.usage - if usage is not None: - usage_dict = { - "input_tokens": result.usage.prompt_tokens, - "output_tokens": usage.completion_tokens, - "total_tokens": usage.total_tokens, - } - span.set_attribute("llm.token.counts", json.dumps(usage_dict)) - span.set_status(StatusCode.OK) - span.end() - return result - else: - # iterate over kwargs.get("messages", {}) and calculate the prompt tokens + if is_streaming(kwargs): prompt_tokens = 0 for message in kwargs.get("messages", {}): prompt_tokens += calculate_prompt_tokens( json.dumps(message), kwargs.get("model") ) - # iterate over kwargs.get("functions") and calculate the prompt tokens if ( kwargs.get("functions") is not None and kwargs.get("functions") != NOT_GIVEN @@ -584,6 +313,11 @@ def traced_method(wrapped, instance, args, kwargs): function_call=kwargs.get("functions") is not None, tool_calls=kwargs.get("tools") is not None, ) + else: + _set_response_attributes(span, kwargs, result) + span.set_status(StatusCode.OK) + span.end() + return result except Exception as error: span.record_exception(error) @@ -591,7 +325,6 @@ def traced_method(wrapped, instance, args, kwargs): span.end() raise - # return the wrapped method return traced_method @@ -599,21 +332,11 @@ def async_chat_completions_create(original_method, version, tracer): """Wrap the `create` method of the `ChatCompletion` class to trace it.""" async def traced_method(wrapped, instance, args, kwargs): - base_url = ( - str(instance._client._base_url) - if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") - else "" - ) service_provider = SERVICE_PROVIDERS["OPENAI"] - # If base url contains perplexity or azure, set the service provider accordingly - if "perplexity" in base_url: + if "perplexity" in get_base_url(instance): service_provider = SERVICE_PROVIDERS["PPLX"] - elif "azure" in base_url: + elif "azure" in get_base_url(instance): service_provider = SERVICE_PROVIDERS["AZURE"] - - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) - - # handle tool calls in the kwargs llm_prompts = [] for item in kwargs.get("messages", []): tools = get_tool_calls(item) @@ -637,117 +360,37 @@ async def traced_method(wrapped, instance, args, kwargs): else "" ), } - tool_calls.append(tool_call_dict) + tool_calls.append(json.dumps(tool_call_dict)) llm_prompts.append(tool_calls) else: llm_prompts.append(item) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": base_url, - "llm.api": APIS["CHAT_COMPLETION"]["ENDPOINT"], - "llm.prompts": json.dumps(llm_prompts), - "llm.stream": kwargs.get("stream"), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider, vendor_type="llm"), + **get_llm_request_attributes(kwargs, prompts=llm_prompts), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: APIS["CHAT_COMPLETION"]["ENDPOINT"], + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) - tools = [] - if ( - kwargs.get("temperature") is not None - and kwargs.get("temperature") != NOT_GIVEN - ): - attributes.llm_temperature = kwargs.get("temperature") - if kwargs.get("top_p") is not None and kwargs.get("top_p") != NOT_GIVEN: - attributes.llm_top_p = kwargs.get("top_p") - if kwargs.get("user") is not None and kwargs.get("user") != NOT_GIVEN: - attributes.llm_user = kwargs.get("user") - if kwargs.get("functions") is not None and kwargs.get("functions") != NOT_GIVEN: - for function in kwargs.get("functions"): - tools.append(json.dumps({"type": "function", "function": function})) - if kwargs.get("tools") is not None and kwargs.get("tools") != NOT_GIVEN: - tools.append(json.dumps(kwargs.get("tools"))) - if len(tools) > 0: - attributes.llm_tools = json.dumps(tools) - - # TODO(Karthik): Gotta figure out how to handle streaming with context - # with tracer.start_as_current_span(APIS["CHAT_COMPLETION"]["METHOD"], - # kind=SpanKind.CLIENT) as span: span = tracer.start_span( - APIS["CHAT_COMPLETION"]["METHOD"], kind=SpanKind.CLIENT + APIS["CHAT_COMPLETION"]["METHOD"], + kind=SpanKind.CLIENT.value, + context=set_span_in_context(trace.get_current_span()), ) - for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + _set_input_attributes(span, kwargs, attributes) + try: - # Attempt to call the original method result = await wrapped(*args, **kwargs) - if ( - kwargs.get("stream") is False - or kwargs.get("stream") is None - or kwargs.get("stream") == NOT_GIVEN - ): - span.set_attribute("llm.model", result.model) - if hasattr(result, "choices") and result.choices is not None: - responses = [ - { - "role": ( - choice.message.role - if choice.message and choice.message.role - else "assistant" - ), - "content": extract_content(choice), - **( - { - "content_filter_results": choice[ - "content_filter_results" - ] - } - if "content_filter_results" in choice - else {} - ), - } - for choice in result.choices - ] - span.set_attribute("llm.responses", json.dumps(responses)) - else: - responses = [] - span.set_attribute("llm.responses", json.dumps(responses)) - if ( - hasattr(result, "system_fingerprint") - and result.system_fingerprint is not None - and result.system_fingerprint != NOT_GIVEN - ): - span.set_attribute( - "llm.system.fingerprint", result.system_fingerprint - ) - # Get the usage - if hasattr(result, "usage") and result.usage is not None: - usage = result.usage - if usage is not None: - usage_dict = { - "input_tokens": result.usage.prompt_tokens, - "output_tokens": usage.completion_tokens, - "total_tokens": usage.total_tokens, - } - span.set_attribute("llm.token.counts", json.dumps(usage_dict)) - span.set_status(StatusCode.OK) - span.end() - return result - else: - # iterate over kwargs.get("messages", {}) and calculate the prompt tokens + if is_streaming(kwargs): prompt_tokens = 0 for message in kwargs.get("messages", {}): prompt_tokens += calculate_prompt_tokens( json.dumps(message), kwargs.get("model") ) - # iterate over kwargs.get("functions") and calculate the prompt tokens if ( kwargs.get("functions") is not None and kwargs.get("functions") != NOT_GIVEN @@ -764,6 +407,11 @@ async def traced_method(wrapped, instance, args, kwargs): function_call=kwargs.get("functions") is not None, tool_calls=kwargs.get("tools") is not None, ) + else: + _set_response_attributes(span, kwargs, result) + span.set_status(StatusCode.OK) + span.end() + return result except Exception as error: span.record_exception(error) @@ -771,7 +419,6 @@ async def traced_method(wrapped, instance, args, kwargs): span.end() raise - # return the wrapped method return traced_method @@ -781,51 +428,39 @@ def embeddings_create(original_method, version, tracer): """ def traced_method(wrapped, instance, args, kwargs): - base_url = ( - str(instance._client._base_url) - if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") - else "" - ) - service_provider = SERVICE_PROVIDERS["OPENAI"] - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": base_url, - "llm.api": APIS["EMBEDDINGS_CREATE"]["ENDPOINT"], - "llm.model": kwargs.get("model"), - "llm.prompts": "", - "llm.embedding_inputs": json.dumps([kwargs.get("input", "")]), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider, vendor_type="llm"), + **get_llm_request_attributes(kwargs), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: APIS["EMBEDDINGS_CREATE"]["ENDPOINT"], + SpanAttributes.LLM_REQUEST_DIMENSIONS: kwargs.get("dimensions"), + **get_extra_attributes(), } - if kwargs.get("encoding_format") is not None: - span_attributes["llm.encoding.formats"] = json.dumps( - [kwargs.get("encoding_format")] + encoding_format = kwargs.get("encoding_format") + if encoding_format is not None: + if not isinstance(encoding_format, list): + encoding_format = [encoding_format] + span_attributes[SpanAttributes.LLM_REQUEST_ENCODING_FORMATS] = ( + encoding_format ) - attributes = LLMSpanAttributes(**span_attributes) - kwargs.get("encoding_format") + if kwargs.get("input") is not None: + span_attributes[SpanAttributes.LLM_REQUEST_EMBEDDING_INPUTS] = json.dumps( + [kwargs.get("input", "")] + ) - if kwargs.get("dimensions") is not None: - attributes["llm.dimensions"] = kwargs.get("dimensions") - if kwargs.get("user") is not None: - attributes["llm.user"] = kwargs.get("user") + attributes = LLMSpanAttributes(**span_attributes) with tracer.start_as_current_span( APIS["EMBEDDINGS_CREATE"]["METHOD"], - kind=SpanKind.CLIENT, + kind=SpanKind.CLIENT.value, context=set_span_in_context(trace.get_current_span()), ) as span: - for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + set_span_attributes(span, attributes) try: # Attempt to call the original method result = wrapped(*args, **kwargs) @@ -850,49 +485,39 @@ def async_embeddings_create(original_method, version, tracer): """ async def traced_method(wrapped, instance, args, kwargs): - base_url = ( - str(instance._client._base_url) - if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") - else "" - ) service_provider = SERVICE_PROVIDERS["OPENAI"] - extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) span_attributes = { - "langtrace.sdk.name": "langtrace-python-sdk", - "langtrace.service.name": service_provider, - "langtrace.service.type": "llm", - "langtrace.service.version": version, - "langtrace.version": v(LANGTRACE_SDK_NAME), - "url.full": base_url, - "llm.api": APIS["EMBEDDINGS_CREATE"]["ENDPOINT"], - "llm.model": kwargs.get("model"), - "llm.prompts": json.dumps( - [{"role": "user", "content": kwargs.get("input", "")}] - ), - **(extra_attributes if extra_attributes is not None else {}), + **get_langtrace_attributes(version, service_provider, vendor_type="llm"), + **get_llm_request_attributes(kwargs), + SpanAttributes.LLM_PATH: APIS["EMBEDDINGS_CREATE"]["ENDPOINT"], + SpanAttributes.LLM_REQUEST_DIMENSIONS: kwargs.get("dimensions"), + **get_extra_attributes(), } attributes = LLMSpanAttributes(**span_attributes) - kwargs.get("encoding_format") - if kwargs.get("encoding_format") is not None: - attributes.llm_encoding_format = kwargs.get("encoding_format") - if kwargs.get("dimensions") is not None: - attributes["llm.dimensions"] = kwargs.get("dimensions") - if kwargs.get("user") is not None: - attributes["llm.user"] = kwargs.get("user") + encoding_format = kwargs.get("encoding_format") + if encoding_format is not None: + if not isinstance(encoding_format, list): + encoding_format = [encoding_format] + span_attributes[SpanAttributes.LLM_REQUEST_ENCODING_FORMATS] = ( + encoding_format + ) + + if kwargs.get("input") is not None: + span_attributes[SpanAttributes.LLM_REQUEST_EMBEDDING_INPUTS] = json.dumps( + [kwargs.get("input", "")] + ) with tracer.start_as_current_span( APIS["EMBEDDINGS_CREATE"]["METHOD"], - kind=SpanKind.CLIENT, + kind=SpanKind.CLIENT.value, context=set_span_in_context(trace.get_current_span()), ) as span: - async for field, value in attributes.model_dump(by_alias=True).items(): - if value is not None: - span.set_attribute(field, value) + set_span_attributes(span, attributes) try: # Attempt to call the original method result = await wrapped(*args, **kwargs) @@ -953,3 +578,74 @@ def extract_content(choice): # Return an empty string if none of the above conditions are met else: return "" + + +@silently_fail +def _set_input_attributes(span, kwargs, attributes): + + for field, value in attributes.model_dump(by_alias=True).items(): + set_span_attribute(span, field, value) + + if kwargs.get("functions") is not None and kwargs.get("functions") != NOT_GIVEN: + tools = [] + for function in kwargs.get("functions"): + tools.append(json.dumps({"type": "function", "function": function})) + + if kwargs.get("tools") is not None and kwargs.get("tools") != NOT_GIVEN: + tools.append(json.dumps(kwargs.get("tools"))) + + if tools: + set_span_attribute(span, SpanAttributes.LLM_TOOLS, json.dumps(tools)) + + +@silently_fail +def _set_response_attributes(span, kwargs, result): + set_span_attribute(span, SpanAttributes.LLM_RESPONSE_MODEL, result.model) + if hasattr(result, "choices") and result.choices is not None: + responses = [ + { + "role": ( + choice.message.role + if choice.message and choice.message.role + else "assistant" + ), + "content": extract_content(choice), + **( + {"content_filter_results": choice["content_filter_results"]} + if "content_filter_results" in choice + else {} + ), + } + for choice in result.choices + ] + set_event_completion(span, responses) + + if ( + hasattr(result, "system_fingerprint") + and result.system_fingerprint is not None + and result.system_fingerprint != NOT_GIVEN + ): + set_span_attribute( + span, + SpanAttributes.LLM_SYSTEM_FINGERPRINT, + result.system_fingerprint, + ) + # Get the usage + if hasattr(result, "usage") and result.usage is not None: + usage = result.usage + if usage is not None: + set_span_attribute( + span, + SpanAttributes.LLM_USAGE_PROMPT_TOKENS, + result.usage.prompt_tokens, + ) + set_span_attribute( + span, + SpanAttributes.LLM_USAGE_COMPLETION_TOKENS, + result.usage.completion_tokens, + ) + set_span_attribute( + span, + SpanAttributes.LLM_USAGE_TOTAL_TOKENS, + result.usage.total_tokens, + ) diff --git a/src/langtrace_python_sdk/instrumentation/qdrant/patch.py b/src/langtrace_python_sdk/instrumentation/qdrant/patch.py index 2d45ff25..b097616d 100644 --- a/src/langtrace_python_sdk/instrumentation/qdrant/patch.py +++ b/src/langtrace_python_sdk/instrumentation/qdrant/patch.py @@ -17,7 +17,7 @@ import json from langtrace.trace_attributes import DatabaseSpanAttributes from langtrace_python_sdk.utils.silently_fail import silently_fail -from langtrace_python_sdk.utils.llm import set_span_attributes +from langtrace_python_sdk.utils import set_span_attribute from opentelemetry import baggage, trace from opentelemetry.trace import SpanKind from opentelemetry.trace.status import Status, StatusCode @@ -64,7 +64,7 @@ def traced_method(wrapped, instance, args, kwargs): ) as span: collection_name = kwargs.get("collection_name") or args[0] operation = api["OPERATION"] - set_span_attributes(span, "db.collection.name", collection_name) + set_span_attribute(span, "db.collection.name", collection_name) if operation == "add": _set_upload_attributes(span, args, kwargs, "documents") @@ -111,7 +111,7 @@ def _set_upsert_attributes(span, args, kwargs): else: # In case of using Batch. length = len(points.ids) - set_span_attributes(span, "db.upsert.points_count", length) + set_span_attribute(span, "db.upsert.points_count", length) @silently_fail @@ -123,16 +123,16 @@ def _set_upload_attributes(span, args, kwargs, field): # In case of using Batch. length = len(docs.ids) - set_span_attributes(span, f"db.upload.{field}_count", length) + set_span_attribute(span, f"db.upload.{field}_count", length) @silently_fail def _set_search_attributes(span, args, kwargs): limit = kwargs.get("limit") or 10 - set_span_attributes(span, "db.query.top_k", limit) + set_span_attribute(span, "db.query.top_k", limit) @silently_fail def _set_batch_search_attributes(span, args, kwargs, method): requests = kwargs.get("requests") or [] - set_span_attributes(span, f"db.{method}.requests_count", len(requests)) + set_span_attribute(span, f"db.{method}.requests_count", len(requests)) diff --git a/src/langtrace_python_sdk/instrumentation/vertexai/__init__.py b/src/langtrace_python_sdk/instrumentation/vertexai/__init__.py new file mode 100644 index 00000000..fb38d6bc --- /dev/null +++ b/src/langtrace_python_sdk/instrumentation/vertexai/__init__.py @@ -0,0 +1,3 @@ +from .instrumentation import VertexAIInstrumentation + +__all__ = ["VertexAIInstrumentation"] diff --git a/src/langtrace_python_sdk/instrumentation/vertexai/instrumentation.py b/src/langtrace_python_sdk/instrumentation/vertexai/instrumentation.py new file mode 100644 index 00000000..58407d21 --- /dev/null +++ b/src/langtrace_python_sdk/instrumentation/vertexai/instrumentation.py @@ -0,0 +1,33 @@ +from typing import Collection +from importlib_metadata import version as v +from langtrace_python_sdk.constants.instrumentation.vertexai import APIS +from wrapt import wrap_function_wrapper as _W +from opentelemetry.instrumentation.instrumentor import BaseInstrumentor +from opentelemetry.trace import get_tracer +from .patch import patch_vertexai + + +class VertexAIInstrumentation(BaseInstrumentor): + def instrumentation_dependencies(self) -> Collection[str]: + return ["google-cloud-aiplatform >= 1.0.0"] + + def _instrument(self, **kwargs): + trace_provider = kwargs.get("tracer_provider") + tracer = get_tracer(__name__, "", trace_provider) + version = v("google-cloud-aiplatform") + + for _, api_config in APIS.items(): + + module = api_config.get("module") + operation = api_config.get("operation") + method = api_config.get("method") + name = f"{method}.{operation}" + + _W( + module=module, + name=name, + wrapper=patch_vertexai(name, version, tracer), + ) + + def _uninstrument(self, **kwargs): + pass diff --git a/src/langtrace_python_sdk/instrumentation/vertexai/patch.py b/src/langtrace_python_sdk/instrumentation/vertexai/patch.py new file mode 100644 index 00000000..26673c47 --- /dev/null +++ b/src/langtrace_python_sdk/instrumentation/vertexai/patch.py @@ -0,0 +1,131 @@ +import types +from langtrace_python_sdk.constants.instrumentation.common import SERVICE_PROVIDERS + + +from langtrace_python_sdk.utils.llm import ( + calculate_prompt_tokens, + get_extra_attributes, + get_langtrace_attributes, + get_llm_request_attributes, + get_llm_url, + set_event_completion, + set_span_attributes, + set_usage_attributes, + StreamWrapper, +) +from langtrace.trace_attributes import LLMSpanAttributes, SpanAttributes +from langtrace_python_sdk.utils.silently_fail import silently_fail +from opentelemetry.trace import Tracer, SpanKind, Span +from opentelemetry import trace +from opentelemetry.trace.propagation import set_span_in_context +from opentelemetry.trace.status import Status, StatusCode +import json + + +def patch_vertexai(name, version, tracer: Tracer): + def traced_method(wrapped, instance, args, kwargs): + service_provider = SERVICE_PROVIDERS["VERTEXAI"] + prompts = serialize_prompts(args, kwargs) + span_attributes = { + **get_langtrace_attributes(version, service_provider), + **get_llm_request_attributes( + kwargs, + prompts=prompts, + model=get_llm_model(instance), + ), + **get_llm_url(instance), + SpanAttributes.LLM_PATH: "", + **get_extra_attributes(), + } + attributes = LLMSpanAttributes(**span_attributes) + span = tracer.start_span( + name=name, + kind=SpanKind.CLIENT, + context=set_span_in_context(trace.get_current_span()), + ) + + try: + set_span_attributes(span, attributes) + result = wrapped(*args, **kwargs) + if is_streaming_response(result): + prompt_tokens = 0 + for message in kwargs.get("message", {}): + prompt_tokens += calculate_prompt_tokens( + json.dumps(message), kwargs.get("model") + ) + return StreamWrapper( + stream=result, span=span, prompt_tokens=prompt_tokens + ) + else: + set_response_attributes(span, result) + span.set_status(StatusCode.OK) + span.end() + return result + except Exception as error: + span.record_exception(error) + span.set_status(Status(StatusCode.ERROR, str(error))) + span.end() + raise + + return traced_method + + +@silently_fail +def set_response_attributes(span: Span, result): + + if hasattr(result, "text"): + set_event_completion(span, [{"role": "assistant", "content": result.text}]) + + if hasattr(result, "usage_metadata"): + usage = result.usage_metadata + input_tokens = usage.prompt_token_count + output_tokens = usage.candidates_token_count + + set_usage_attributes( + span, {"input_tokens": input_tokens, "output_tokens": output_tokens} + ) + + if hasattr(result, "_prediction_response"): + usage = result._prediction_response.metadata.get("tokenMetadata") + input_tokens = usage.get("inputTokenCount").get("totalTokens") + output_tokens = usage.get("outputTokenCount").get("totalTokens") + set_usage_attributes( + span, {"input_tokens": input_tokens, "output_tokens": output_tokens} + ) + + +def is_streaming_response(response): + return isinstance(response, types.GeneratorType) or isinstance( + response, types.AsyncGeneratorType + ) + + +def get_llm_model(instance): + llm_model = "unknown" + if hasattr(instance, "_model_id"): + llm_model = instance._model_id + if hasattr(instance, "_model_name"): + llm_model = instance._model_name.replace("publishers/google/models/", "") + return llm_model + + +def serialize_prompts(args, kwargs): + prompt = "" + if args is not None and len(args) > 0: + for arg in args: + if isinstance(arg, str): + prompt = f"{prompt}{arg}\n" + elif isinstance(arg, list): + for subarg in arg: + if type(subarg).__name__ == "Part": + prompt = f"{prompt}{json.dumps(subarg.to_dict())}\n" + else: + prompt = f"{prompt}{subarg}\n" + else: + prompt = [ + { + "role": "user", + "content": kwargs.get("prompt") or kwargs.get("message"), + } + ] + return prompt diff --git a/src/langtrace_python_sdk/langtrace.py b/src/langtrace_python_sdk/langtrace.py index 15971ee9..a8bb4b7f 100644 --- a/src/langtrace_python_sdk/langtrace.py +++ b/src/langtrace_python_sdk/langtrace.py @@ -53,6 +53,8 @@ WeaviateInstrumentation, OllamaInstrumentor, DspyInstrumentation, + VertexAIInstrumentation, + GeminiInstrumentation, ) from opentelemetry.instrumentation.sqlalchemy import SQLAlchemyInstrumentor from colorama import Fore @@ -113,6 +115,8 @@ def init( "ollama": OllamaInstrumentor(), "dspy": DspyInstrumentation(), "crewai": CrewAIInstrumentation(), + "vertexai": VertexAIInstrumentation(), + "gemini": GeminiInstrumentation(), } init_instrumentations(disable_instrumentations, all_instrumentations) @@ -143,6 +147,7 @@ def init_instrumentations( ): if disable_instrumentations is None: for idx, (name, v) in enumerate(all_instrumentations.items()): + v.instrument() else: diff --git a/src/langtrace_python_sdk/utils/__init__.py b/src/langtrace_python_sdk/utils/__init__.py index b58cc815..5f23d227 100644 --- a/src/langtrace_python_sdk/utils/__init__.py +++ b/src/langtrace_python_sdk/utils/__init__.py @@ -1,10 +1,21 @@ +from openai import NOT_GIVEN from .sdk_version_checker import SDKVersionChecker +from opentelemetry.trace import Span +from langtrace.trace_attributes import SpanAttributes -def set_span_attribute(span, name, value): +def set_span_attribute(span: Span, name, value): if value is not None: - if value != "": - span.set_attribute(name, value) + if value != "" or value != NOT_GIVEN: + if name == SpanAttributes.LLM_PROMPTS: + span.add_event( + name=SpanAttributes.LLM_CONTENT_PROMPT, + attributes={ + SpanAttributes.LLM_PROMPTS: value, + }, + ) + else: + span.set_attribute(name, value) return diff --git a/src/langtrace_python_sdk/utils/llm.py b/src/langtrace_python_sdk/utils/llm.py index 56d6c460..ed29451a 100644 --- a/src/langtrace_python_sdk/utils/llm.py +++ b/src/langtrace_python_sdk/utils/llm.py @@ -14,10 +14,22 @@ limitations under the License. """ +from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME +from langtrace_python_sdk.utils import set_span_attribute +from openai import NOT_GIVEN from tiktoken import get_encoding -from langtrace_python_sdk.constants.instrumentation.common import TIKTOKEN_MODEL_MAPPING +from langtrace_python_sdk.constants.instrumentation.common import ( + LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY, + TIKTOKEN_MODEL_MAPPING, +) from langtrace_python_sdk.constants.instrumentation.openai import OPENAI_COST_TABLE +from langtrace.trace_attributes import SpanAttributes, Event +from importlib_metadata import version as v +import json +from opentelemetry import baggage +from opentelemetry.trace import Span +from opentelemetry.trace.status import StatusCode def estimate_tokens(prompt): @@ -29,6 +41,15 @@ def estimate_tokens(prompt): return 0 +def set_event_completion_chunk(span: Span, chunk): + span.add_event( + name=SpanAttributes.LLM_CONTENT_COMPLETION_CHUNK, + attributes={ + SpanAttributes.LLM_CONTENT_COMPLETION_CHUNK: json.dumps(chunk), + }, + ) + + def estimate_tokens_using_tiktoken(prompt, model): """ Estimate the number of tokens in a prompt using tiktoken.""" @@ -60,11 +81,110 @@ def calculate_price_from_usage(model, usage): return 0 -def set_span_attributes(span, name, value): - if value is not None: - if value != "": - span.set_attribute(name, value) - return +def get_langtrace_attributes(version, service_provider, vendor_type="llm"): + return { + SpanAttributes.LANGTRACE_SDK_NAME: LANGTRACE_SDK_NAME, + SpanAttributes.LANGTRACE_VERSION: v(LANGTRACE_SDK_NAME), + SpanAttributes.LANGTRACE_SERVICE_VERSION: version, + SpanAttributes.LANGTRACE_SERVICE_NAME: service_provider, + SpanAttributes.LANGTRACE_SERVICE_TYPE: vendor_type, + } + + +def get_llm_request_attributes(kwargs, prompts=None, model=None): + + user = kwargs.get("user", None) + if prompts is None: + prompts = ( + [{"role": user or "user", "content": kwargs.get("prompt")}] + if "prompt" in kwargs + else None + ) + top_k = ( + kwargs.get("n", None) + or kwargs.get("k", None) + or kwargs.get("top_k", None) + or kwargs.get("top_n", None) + ) + + top_p = kwargs.get("p", None) or kwargs.get("top_p", None) + tools = kwargs.get("tools", None) + return { + SpanAttributes.LLM_REQUEST_MODEL: model or kwargs.get("model"), + SpanAttributes.LLM_IS_STREAMING: kwargs.get("stream"), + SpanAttributes.LLM_REQUEST_TEMPERATURE: kwargs.get("temperature"), + SpanAttributes.LLM_TOP_K: top_k, + SpanAttributes.LLM_PROMPTS: json.dumps(prompts) if prompts else None, + SpanAttributes.LLM_USER: user, + SpanAttributes.LLM_REQUEST_TOP_P: top_p, + SpanAttributes.LLM_REQUEST_MAX_TOKENS: kwargs.get("max_tokens"), + SpanAttributes.LLM_SYSTEM_FINGERPRINT: kwargs.get("system_fingerprint"), + SpanAttributes.LLM_PRESENCE_PENALTY: kwargs.get("presence_penalty"), + SpanAttributes.LLM_FREQUENCY_PENALTY: kwargs.get("frequency_penalty"), + SpanAttributes.LLM_REQUEST_SEED: kwargs.get("seed"), + SpanAttributes.LLM_TOOLS: json.dumps(tools) if tools else None, + SpanAttributes.LLM_REQUEST_LOGPROPS: kwargs.get("logprobs"), + SpanAttributes.LLM_REQUEST_LOGITBIAS: kwargs.get("logit_bias"), + SpanAttributes.LLM_REQUEST_TOP_LOGPROPS: kwargs.get("top_logprobs"), + } + + +def get_extra_attributes(): + extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY) + return extra_attributes or {} + + +def get_llm_url(instance): + return { + SpanAttributes.LLM_URL: get_base_url(instance), + } + + +def get_base_url(instance): + return ( + str(instance._client._base_url) + if hasattr(instance, "_client") and hasattr(instance._client, "_base_url") + else "" + ) + + +def is_streaming(kwargs): + return not ( + kwargs.get("stream") is False + or kwargs.get("stream") is None + or kwargs.get("stream") == NOT_GIVEN + ) + + +def set_usage_attributes(span, usage): + if usage is None: + return + + input_tokens = usage.get("input_tokens") or usage.get("prompt_tokens") or 0 + output_tokens = usage.get("output_tokens") or usage.get("completion_tokens") or 0 + + set_span_attribute( + span, + SpanAttributes.LLM_USAGE_PROMPT_TOKENS, + input_tokens, + ) + + set_span_attribute( + span, + SpanAttributes.LLM_USAGE_COMPLETION_TOKENS, + output_tokens, + ) + + set_span_attribute( + span, + SpanAttributes.LLM_USAGE_TOTAL_TOKENS, + input_tokens + output_tokens, + ) + + if "search_units" in usage: + set_span_attribute( + span, SpanAttributes.LLM_USAGE_SEARCH_UNITS, usage["search_units"] + ) def get_tool_calls(item): @@ -77,3 +197,188 @@ def get_tool_calls(item): if hasattr(item, "tool_calls") and item.tool_calls is not None: return item.tool_calls return None + + +def set_event_completion(span: Span, result_content): + + span.add_event( + name=SpanAttributes.LLM_CONTENT_COMPLETION, + attributes={ + SpanAttributes.LLM_COMPLETIONS: json.dumps(result_content), + }, + ) + + +def set_span_attributes(span: Span, attributes: dict): + for field, value in attributes.model_dump(by_alias=True).items(): + set_span_attribute(span, field, value) + + +class StreamWrapper: + span: Span + + def __init__( + self, stream, span, prompt_tokens, function_call=False, tool_calls=False + ): + self.stream = stream + self.span = span + self.prompt_tokens = prompt_tokens + self.function_call = function_call + self.tool_calls = tool_calls + self.result_content = [] + self.completion_tokens = 0 + self._span_started = False + self.setup() + + def setup(self): + if not self._span_started: + self.span.add_event(Event.STREAM_START.value) + self._span_started = True + + def cleanup(self): + if self._span_started: + self.span.add_event(Event.STREAM_END.value) + set_span_attribute( + self.span, + SpanAttributes.LLM_USAGE_PROMPT_TOKENS, + self.prompt_tokens, + ) + set_span_attribute( + self.span, + SpanAttributes.LLM_USAGE_COMPLETION_TOKENS, + self.completion_tokens, + ) + set_span_attribute( + self.span, + SpanAttributes.LLM_USAGE_TOTAL_TOKENS, + self.prompt_tokens + self.completion_tokens, + ) + set_event_completion( + self.span, + [ + { + "role": "assistant", + "content": "".join(self.result_content), + } + ], + ) + + self.span.set_status(StatusCode.OK) + self.span.end() + self._span_started = False + + def __enter__(self): + self.setup() + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + self.cleanup() + + async def __aenter__(self): + self.setup() + return self + + async def __aexit__(self, exc_type, exc_val, exc_tb): + self.cleanup() + + def __iter__(self): + return self + + def __next__(self): + try: + chunk = next(self.stream) + self.process_chunk(chunk) + return chunk + except StopIteration: + self.cleanup() + raise + + def __aiter__(self): + return self + + async def __anext__(self): + try: + chunk = await self.stream.__anext__() + self.process_chunk(chunk) + return chunk + except StopAsyncIteration: + self.cleanup() + raise StopAsyncIteration + + def process_chunk(self, chunk): + if hasattr(chunk, "model") and chunk.model is not None: + set_span_attribute( + self.span, + SpanAttributes.LLM_RESPONSE_MODEL, + chunk.model, + ) + + if hasattr(chunk, "choices") and chunk.choices is not None: + content = [] + if not self.function_call and not self.tool_calls: + for choice in chunk.choices: + if choice.delta and choice.delta.content is not None: + token_counts = estimate_tokens(choice.delta.content) + self.completion_tokens += token_counts + content = [choice.delta.content] + elif self.function_call: + for choice in chunk.choices: + if ( + choice.delta + and choice.delta.function_call is not None + and choice.delta.function_call.arguments is not None + ): + token_counts = estimate_tokens( + choice.delta.function_call.arguments + ) + self.completion_tokens += token_counts + content = [choice.delta.function_call.arguments] + elif self.tool_calls: + for choice in chunk.choices: + if choice.delta and choice.delta.tool_calls is not None: + toolcalls = choice.delta.tool_calls + content = [] + for tool_call in toolcalls: + if ( + tool_call + and tool_call.function is not None + and tool_call.function.arguments is not None + ): + token_counts = estimate_tokens( + tool_call.function.arguments + ) + self.completion_tokens += token_counts + content.append(tool_call.function.arguments) + self.span.add_event( + Event.STREAM_OUTPUT.value, + { + SpanAttributes.LLM_CONTENT_COMPLETION_CHUNK: ( + "".join(content) + if len(content) > 0 and content[0] is not None + else "" + ) + }, + ) + if content: + self.result_content.append(content[0]) + + if hasattr(chunk, "text"): + token_counts = estimate_tokens(chunk.text) + self.completion_tokens += token_counts + content = [chunk.text] + self.span.add_event( + Event.STREAM_OUTPUT.value, + { + SpanAttributes.LLM_CONTENT_COMPLETION_CHUNK: ( + "".join(content) + if len(content) > 0 and content[0] is not None + else "" + ) + }, + ) + if content: + self.result_content.append(content[0]) + + if hasattr(chunk, "usage_metadata"): + self.completion_tokens = chunk.usage_metadata.candidates_token_count + self.prompt_tokens = chunk.usage_metadata.prompt_token_count diff --git a/src/langtrace_python_sdk/version.py b/src/langtrace_python_sdk/version.py index 2ab116b7..b19ee4b7 100644 --- a/src/langtrace_python_sdk/version.py +++ b/src/langtrace_python_sdk/version.py @@ -1 +1 @@ -__version__ = "2.1.29" +__version__ = "2.2.1" diff --git a/src/run_example.py b/src/run_example.py index 2de23e50..a25fe7ce 100644 --- a/src/run_example.py +++ b/src/run_example.py @@ -6,7 +6,7 @@ "cohere": False, "fastapi": False, "langchain": False, - "llamaindex": True, + "llamaindex": False, "hiveagent": False, "openai": False, "perplexity": False, @@ -15,6 +15,8 @@ "weaviate": False, "ollama": False, "groq": False, + "vertexai": False, + "gemini": True, } if ENABLED_EXAMPLES["anthropic"]: @@ -82,3 +84,22 @@ print(Fore.BLUE + "Running Ollama example" + Fore.RESET) OllamaRunner().run() + +if ENABLED_EXAMPLES["groq"]: + from examples.langchain_example import GroqRunner + + print(Fore.BLUE + "Running Groq example" + Fore.RESET) + GroqRunner().run() + + +if ENABLED_EXAMPLES["vertexai"]: + from examples.vertexai_example import VertexAIRunner + + print(Fore.BLUE + "Running Vertexai example" + Fore.RESET) + VertexAIRunner().run() + +if ENABLED_EXAMPLES["gemini"]: + from examples.gemini_example import GeminiRunner + + print(Fore.BLUE + "Running Gemini example" + Fore.RESET) + GeminiRunner().run() diff --git a/src/tests/anthropic/test_anthropic.py b/src/tests/anthropic/test_anthropic.py index 297f7fca..a8e9a9c8 100644 --- a/src/tests/anthropic/test_anthropic.py +++ b/src/tests/anthropic/test_anthropic.py @@ -3,9 +3,17 @@ import importlib from langtrace_python_sdk.constants.instrumentation.anthropic import APIS from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME -from tests.utils import assert_response_format, assert_token_count +from tests.utils import ( + assert_completion_in_events, + assert_langtrace_attributes, + assert_prompt_in_events, + assert_response_format, + assert_token_count, +) from importlib_metadata import version as v +from langtrace.trace_attributes import SpanAttributes + @pytest.mark.vcr() def test_anthropic(anthropic_client, exporter): @@ -25,22 +33,17 @@ def test_anthropic(anthropic_client, exporter): assert completion_span.name == "anthropic.messages.create" attributes = completion_span.attributes - - assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk" - assert attributes.get("langtrace.service.name") == "Anthropic" - assert attributes.get("langtrace.service.type") == "llm" - assert attributes.get("langtrace.service.version") == importlib.metadata.version( - "anthropic" + assert_langtrace_attributes(attributes, "Anthropic") + assert_prompt_in_events(completion_span.events) + assert_completion_in_events(completion_span.events) + assert attributes.get(SpanAttributes.LLM_URL) == "https://api.anthropic.com" + assert ( + attributes.get(SpanAttributes.LLM_PATH) == APIS["MESSAGES_CREATE"]["ENDPOINT"] ) - assert attributes.get("langtrace.version") == v(LANGTRACE_SDK_NAME) - assert attributes.get("url.full") == "https://api.anthropic.com" - assert attributes.get("llm.api") == APIS["MESSAGES_CREATE"]["ENDPOINT"] - assert attributes.get("llm.model") == llm_model_value - assert attributes.get("llm.prompts") == json.dumps(messages_value) - assert attributes.get("llm.stream") is False + assert attributes.get(SpanAttributes.LLM_REQUEST_MODEL) == llm_model_value + assert attributes.get(SpanAttributes.LLM_IS_STREAMING) is False assert_token_count(attributes) - assert_response_format(attributes) @pytest.mark.vcr() @@ -68,21 +71,19 @@ def test_anthropic_streaming(anthropic_client, exporter): assert streaming_span.name == "anthropic.messages.create" attributes = streaming_span.attributes - assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk" - assert attributes.get("langtrace.service.name") == "Anthropic" - assert attributes.get("langtrace.service.type") == "llm" - assert attributes.get("langtrace.service.version") == importlib.metadata.version( - "anthropic" + assert_langtrace_attributes(attributes, "Anthropic") + assert_prompt_in_events(streaming_span.events) + assert_completion_in_events(streaming_span.events) + + assert attributes.get(SpanAttributes.LLM_URL) == "https://api.anthropic.com" + assert ( + attributes.get(SpanAttributes.LLM_PATH) == APIS["MESSAGES_CREATE"]["ENDPOINT"] ) - assert attributes.get("langtrace.version") == v(LANGTRACE_SDK_NAME) - assert attributes.get("url.full") == "https://api.anthropic.com" - assert attributes.get("llm.api") == APIS["MESSAGES_CREATE"]["ENDPOINT"] - assert attributes.get("llm.model") == llm_model_value - assert attributes.get("llm.prompts") == json.dumps(messages_value) - assert attributes.get("llm.stream") is True + assert attributes.get(SpanAttributes.LLM_REQUEST_MODEL) == llm_model_value + assert attributes.get(SpanAttributes.LLM_IS_STREAMING) is True + events = streaming_span.events - assert len(events) - 2 == chunk_count # -2 for start and end events + assert len(events) - 4 == chunk_count assert_token_count(attributes) - assert_response_format(attributes) diff --git a/src/tests/cohere/test_cohere_chat.py b/src/tests/cohere/test_cohere_chat.py index 724ad2bd..f20431af 100644 --- a/src/tests/cohere/test_cohere_chat.py +++ b/src/tests/cohere/test_cohere_chat.py @@ -4,8 +4,15 @@ import pytest import importlib from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME -from tests.utils import assert_response_format, assert_token_count +from tests.utils import ( + assert_completion_in_events, + assert_langtrace_attributes, + assert_prompt_in_events, + assert_response_format, + assert_token_count, +) from importlib_metadata import version as v +from langtrace.trace_attributes import SpanAttributes @pytest.mark.vcr @@ -33,28 +40,21 @@ def test_cohere_chat(cohere_client, exporter): cohere_span = spans[-1] assert cohere_span.name == APIS["CHAT_CREATE"]["METHOD"] attributes = cohere_span.attributes + assert_langtrace_attributes(attributes, SERVICE_PROVIDERS["COHERE"]) + assert_prompt_in_events(cohere_span.events) + assert_completion_in_events(cohere_span.events) - assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk" - assert attributes.get("langtrace.service.name") == SERVICE_PROVIDERS["COHERE"] - assert attributes.get("langtrace.service.type") == "llm" - assert attributes.get("langtrace.service.version") == importlib.metadata.version( - "cohere" + assert attributes.get(SpanAttributes.LLM_URL) == APIS["CHAT_CREATE"]["URL"] + assert attributes.get(SpanAttributes.LLM_PATH) == APIS["CHAT_CREATE"]["ENDPOINT"] + assert attributes.get(SpanAttributes.LLM_REQUEST_MODEL) == llm_model_value + assert attributes.get(SpanAttributes.LLM_REQUEST_TEMPERATURE) == kwargs.get( + "temperature" ) + assert attributes.get(SpanAttributes.LLM_GENERATION_ID) == res.generation_id - assert attributes.get("langtrace.version") == v(LANGTRACE_SDK_NAME) - assert attributes.get("url.full") == APIS["CHAT_CREATE"]["URL"] - assert attributes.get("llm.api") == APIS["CHAT_CREATE"]["ENDPOINT"] - assert attributes.get("llm.model") == llm_model_value - assert attributes.get("llm.generation_id") == res.generation_id - assert attributes.get("llm.temperature") == kwargs.get("temperature") - assert attributes.get("llm.stream") is False - - assert json.loads(attributes.get("llm.connectors")) == connectors - assert json.loads(attributes.get("llm.prompts"))[-1]["content"] == messages_value - assert json.loads(attributes.get("llm.responses"))[-1]["content"] == res.text + assert json.loads(attributes.get("llm_connectors")) == connectors assert_token_count(attributes) - assert_response_format(attributes) @pytest.mark.vcr @@ -92,27 +92,27 @@ def test_cohere_chat_streaming(cohere_client, exporter): assert cohere_span.name == APIS["CHAT_STREAM"]["METHOD"] attributes = cohere_span.attributes - assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk" - assert attributes.get("langtrace.service.name") == SERVICE_PROVIDERS["COHERE"] - assert attributes.get("langtrace.service.type") == "llm" - assert attributes.get("langtrace.service.version") == importlib.metadata.version( - "cohere" + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == LANGTRACE_SDK_NAME + assert ( + attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) + == SERVICE_PROVIDERS["COHERE"] + ) + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("cohere") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v(LANGTRACE_SDK_NAME) + assert attributes.get(SpanAttributes.LLM_URL) == APIS["CHAT_STREAM"]["URL"] + assert attributes.get(SpanAttributes.LLM_PATH) == APIS["CHAT_STREAM"]["ENDPOINT"] + assert attributes.get(SpanAttributes.LLM_REQUEST_MODEL) == llm_model_value + assert attributes.get(SpanAttributes.LLM_REQUEST_TEMPERATURE) == kwargs.get( + "temperature" ) + assert attributes.get(SpanAttributes.LLM_IS_STREAMING) is True - assert attributes.get("langtrace.version") == v(LANGTRACE_SDK_NAME) - assert attributes.get("url.full") == APIS["CHAT_STREAM"]["URL"] - assert attributes.get("llm.api") == APIS["CHAT_STREAM"]["ENDPOINT"] - assert attributes.get("llm.model") == llm_model_value - assert attributes.get("llm.temperature") == kwargs.get("temperature") - assert attributes.get("llm.stream") is True - assert json.loads(attributes.get("llm.connectors")) == connectors - assert json.loads(attributes.get("llm.prompts"))[-1]["content"] == messages_value + assert json.loads(attributes.get("llm_connectors")) == connectors events = cohere_span.events + assert_prompt_in_events(events) + assert_completion_in_events(events) assert events[-1].name == "stream.end" - assert len(events) - 2 == chunks_count - assert ( - json.loads(attributes.get("llm.responses"))[-1]["content"] == streamed_response - ) + assert len(events) - 4 == chunks_count assert_token_count(attributes) - assert_response_format(attributes) diff --git a/src/tests/cohere/test_cohere_embed.py b/src/tests/cohere/test_cohere_embed.py index dba45d95..60041a45 100644 --- a/src/tests/cohere/test_cohere_embed.py +++ b/src/tests/cohere/test_cohere_embed.py @@ -4,6 +4,7 @@ from importlib_metadata import version as v from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME +from langtrace.trace_attributes import SpanAttributes @pytest.mark.vcr @@ -24,12 +25,14 @@ def test_cohere_embed(cohere_client, exporter): assert cohere_span.name == APIS["EMBED"]["METHOD"] attributes = cohere_span.attributes - assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk" - assert attributes.get("langtrace.service.name") == SERVICE_PROVIDERS["COHERE"] - assert attributes.get("langtrace.service.type") == "llm" - assert attributes.get("langtrace.service.version") == v("cohere") - - assert attributes.get("langtrace.version") == v(LANGTRACE_SDK_NAME) - assert attributes.get("url.full") == APIS["EMBED"]["URL"] - assert attributes.get("llm.api") == APIS["EMBED"]["ENDPOINT"] - assert attributes.get("llm.model") == llm_model_value + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == LANGTRACE_SDK_NAME + assert ( + attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) + == SERVICE_PROVIDERS["COHERE"] + ) + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("cohere") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v(LANGTRACE_SDK_NAME) + assert attributes.get(SpanAttributes.LLM_URL) == APIS["EMBED"]["URL"] + assert attributes.get(SpanAttributes.LLM_PATH) == APIS["EMBED"]["ENDPOINT"] + assert attributes.get(SpanAttributes.LLM_REQUEST_MODEL) == llm_model_value diff --git a/src/tests/cohere/test_cohere_rerank.py b/src/tests/cohere/test_cohere_rerank.py index 820b866a..f6663fb1 100644 --- a/src/tests/cohere/test_cohere_rerank.py +++ b/src/tests/cohere/test_cohere_rerank.py @@ -1,9 +1,11 @@ +from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME from langtrace_python_sdk.constants.instrumentation.common import SERVICE_PROVIDERS import pytest import json from langtrace_python_sdk.constants.instrumentation.cohere import APIS from tests.utils import assert_token_count from importlib_metadata import version as v +from langtrace.trace_attributes import SpanAttributes @pytest.mark.vcr @@ -30,17 +32,22 @@ def test_cohere_rerank(cohere_client, exporter): assert cohere_span.name == APIS["RERANK"]["METHOD"] attributes = cohere_span.attributes - assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk" - assert attributes.get("langtrace.service.name") == SERVICE_PROVIDERS["COHERE"] - assert attributes.get("langtrace.service.type") == "llm" - assert attributes.get("langtrace.service.version") == v("cohere") - - assert attributes.get("langtrace.version") == v("langtrace-python-sdk") - assert attributes.get("url.full") == APIS["RERANK"]["URL"] - assert attributes.get("llm.api") == APIS["RERANK"]["ENDPOINT"] - assert attributes.get("llm.model") == llm_model_value - - langtrace_results = json.loads(attributes.get("llm.retrieval.results")) + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == LANGTRACE_SDK_NAME + + assert ( + attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) + == SERVICE_PROVIDERS["COHERE"] + ) + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("cohere") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v(LANGTRACE_SDK_NAME) + assert attributes.get(SpanAttributes.LLM_URL) == APIS["RERANK"]["URL"] + assert attributes.get(SpanAttributes.LLM_PATH) == APIS["RERANK"]["ENDPOINT"] + assert attributes.get(SpanAttributes.LLM_REQUEST_MODEL) == llm_model_value + + langtrace_results = json.loads( + attributes.get(SpanAttributes.LLM_COHERE_RERANK_RESULTS) + ) for idx, res in enumerate(results.results): lang_res = json.loads(langtrace_results[idx]) assert lang_res["index"] == res.index diff --git a/src/tests/groq/cassettes/test_async_chat_completion.yaml b/src/tests/groq/cassettes/test_async_chat_completion.yaml new file mode 100644 index 00000000..14158f50 --- /dev/null +++ b/src/tests/groq/cassettes/test_async_chat_completion.yaml @@ -0,0 +1,113 @@ +interactions: +- request: + body: '{"messages": [{"role": "user", "content": "Explain the importance of low + latency LLMs"}], "model": "llama3-8b-8192"}' + headers: + accept: + - application/json + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '116' + content-type: + - application/json + host: + - api.groq.com + user-agent: + - AsyncGroq/Python 0.9.0 + x-stainless-arch: + - arm64 + x-stainless-async: + - async:asyncio + x-stainless-lang: + - python + x-stainless-os: + - MacOS + x-stainless-package-version: + - 0.9.0 + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.11.5 + method: POST + uri: https://api.groq.com/openai/v1/chat/completions + response: + body: + string: !!binary | + H4sIAAAAAAAAA7xXwW4jNwy99yuIObWLsWEndhz7tii6aIBsD+0WPdRFQGs4Hm400kSUnMwu8u8F + NbbjZJO2p15tUeJ7fHzkfC24KlaFaTCatrOjCs9n1flyM1pO0Ixmy7PlaLO8MKPFcjqbzBZkEOdF + WfjNZzJxHzg2vu0sRfauKAsTCCNVxWq6mC6X88lkelEWra/IFqvCWmzxfHS5GV1Ol2d6uvFsSIrV + n18LdhU9FKtJWbQkglsqVl+L4C0VqwJFWCK6qDHeRXL6+rW/H1mM5EwP1xi2BNfotgm3BB/1RYHv + r68/yg+AgYBEyEVGC7UPsMPAPglg11k2qMkLxAYjBLpLHAgCdlwBugqortkwuQhd8IZE2G3B1+Aw + poAW7OHRCiOO4WcKlF8U3xIEQtG775se7Gm+1x8ln+K280GhrdZu7aZjePfuV0I7itzS09VPL797 + t4LrlxeRw43Nj70dWMJ9w6YBFjAhmQMTzxiwfHsSGwM6sfmvEjJ7rbKADm0vLGVmJ9JDBElti4G/ + 5LNj+INjo2hhn2QJSSgIGHQQyBDvCNjlgkIg6bwTkhJavFVqY6P/Rgpo9DpovZJJ2FoSGSriPvte + EY/X7kwZuzoc39EzQK+Spaw7UlYw9JkDfiN84ENFvvFRSthxiAktHOW458A7y+6UuBR9kDF8akhe + 3HiQV40ScywakwJGeiICoocW2UVkB/iEXDkEeugoMDmj2M8V+4+BIxu0UJFhYe9GA4+K/coBuypJ + DEx7NDU7dIZKaAhtbAwGGkCYJNG3FEAo7FhPfKNXrZ/w1nHNBl20vaoXTQTzRg5j+OA1Z1SHKIEd + SPTmVpVVZUmqpGz/irjyWw3ZDtjtSJRP1Ycqo/ahper4lIzXbpZF0HbB76h6SdSrItDreQjIgvM7 + Cmjty1jY9BCoSuYgzNxdHCHi7VCpfYNlCocSVvpzvoddl6LKgEXbrsMQ2SSLYWBu6Htl5VvRCWEw + DZDbstPeuG/ooJpAkmyU5642Xru5kvCbQYsbthz7N8VfkRaRcp5i0BI0PvAX7yJa2x98oiXMnkj9 + UAt0lVWNq8/uvE0tibpgDKj+uMd/l0iiwD3HxqcIgiaoWJS9joJWTsW3p6QdOGyoBUkcs4VpO+Y3 + RkNmp8yM1+5i8McqGarAeInyZnVz2Ybi5oPatd6wTqecH4TknCbW8LY5hudRpW29h37o19yBOulS + zMmghc7fU8i4W2p96P+10IrNWJ+q0QaFqkOjHavLrg4oMSQTUzhkrVCwqiB1cJfY3Np+vHaLwfR0 + 2OpFg4eY/k0uVK2A1Q5dVH/ydbbhrL0uxUG8ea4+RBXFSWNwgC5QxWbQ5pNjmf+G97+Ol4GBw9XD + kBo8Zbx2l1nZqdOL861tspFHra/Q7iG8CV32Yd+GlCDJNLnS9BBL2PnsegqRW9wOdeHchCpNGQbR + YernYy4mzlNj3+7HoaVaXWrWP7kGXdY/mjyI/6E3Tz3p2emMeRihWbkVy9DjTKcoGi86RmyfFxQH + YgKRNgJWGqprj0J8Nr42vTrYjtWOs70cJO2P5TidTeO1m04U14ekGh11wft6P2zeC7y/GoLRNHkg + EobcYqotdolUXLTzdvfadLlna6Gz2AMeNxTd/9Qgcwn0piEvVbI6wKm6noj46aGzyMNK9P6qhF/2 + JTtuh787JSSiG4aQpvxR5TGo40PSsTLWdezK7Vebvnx9e/vftspPaka+rimASy0FfWZDjmrWKrIz + NuUS8htDMJ95YRfl3rRP3PR0CWth0OOxm5OrMqahBdH18P5qlF3wxMwGizh17eKxLKzfdsFvpFi5 + ZG1Z1OxYmpthOy5WhUTfFY9/lUU6bP5d8G0Xb6K/JSfF6mxSHn/ilorVZDyZnC8up4vLS/0mOHyC + HAPm8/nz3/dRs9n5xXx5eX5WFtFHtE8Bi/nxp+PZxWw2vTh7LAvpJVJ7o1qn0AXOHyB1d4P1ZD6f + Lwzq58zDzTb4O80+f1YFuruZTD9P43b2pQ31ZS2bare766eb+iGG4vHxu78BAAD//wMAo40234AN + AAA= + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 89d12ed05998077f-MRS + Cache-Control: + - private, max-age=0, no-store, no-cache, must-revalidate + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Tue, 02 Jul 2024 19:53:36 GMT + Server: + - cloudflare + Set-Cookie: + - __cf_bm=kwAg3.4AprJOv6O8EoGGz949TacWaWKQOH.h4WYt6rQ-1719950016-1.0.1.1-wr1oIH71tAeoJR4E4muLNPp2pxTLEccQzQSaalMzTRri_RMUSGy7IVTmulIABre9w2vpXFnWiodeNPwZzdQ_hQ; + path=/; expires=Tue, 02-Jul-24 20:23:36 GMT; domain=.groq.com; HttpOnly; Secure; + SameSite=None + Transfer-Encoding: + - chunked + alt-svc: + - h3=":443"; ma=86400 + vary: + - Origin + via: + - 1.1 google + x-ratelimit-limit-requests: + - '14400' + x-ratelimit-limit-tokens: + - '30000' + x-ratelimit-remaining-requests: + - '14398' + x-ratelimit-remaining-tokens: + - '29642' + x-ratelimit-reset-requests: + - 10.974999999s + x-ratelimit-reset-tokens: + - 716ms + x-request-id: + - req_01j1tg4zmrf8fsbdvvqy1bfxtr + status: + code: 200 + message: OK +version: 1 diff --git a/src/tests/groq/cassettes/test_async_chat_completion_streaming.yaml b/src/tests/groq/cassettes/test_async_chat_completion_streaming.yaml new file mode 100644 index 00000000..4c7ec974 --- /dev/null +++ b/src/tests/groq/cassettes/test_async_chat_completion_streaming.yaml @@ -0,0 +1,2232 @@ +interactions: +- request: + body: '{"messages": [{"role": "user", "content": "Explain the importance of low + latency LLMs"}], "model": "llama3-8b-8192", "stream": true}' + headers: + accept: + - application/json + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '132' + content-type: + - application/json + host: + - api.groq.com + user-agent: + - AsyncGroq/Python 0.9.0 + x-stainless-arch: + - arm64 + x-stainless-async: + - async:asyncio + x-stainless-lang: + - python + x-stainless-os: + - MacOS + x-stainless-package-version: + - 0.9.0 + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.11.5 + method: POST + uri: https://api.groq.com/openai/v1/chat/completions + response: + body: + string: 'data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}],"x_groq":{"id":"req_01j1tg51n4eew9ffakmz6evgxg"}} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"Large"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Language"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Models"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + ("},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LL"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"Ms"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":")"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + have"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + revolution"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ized"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + field"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Natural"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Language"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + ("},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"N"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LP"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":")"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + by"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + enabling"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + a"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + wide"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + range"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + such"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + as"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + language"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + translation"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + text"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + summar"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ization"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + chat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"bots"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Among"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + various"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + types"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + particularly"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + important"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + due"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + their"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + ability"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + process"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + respond"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + user"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + input"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + in"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + real"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-time"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Here"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + some"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + reasons"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + why"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + crucial"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":\n\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"Real"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-time"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + interactive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + essential"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + that"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + require"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + real"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-time"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + interaction"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + such"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + as"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Chat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"bots"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Quick"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + responses"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + critical"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + keep"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + users"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + engaged"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + avoid"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + abandoning"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + conversation"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Virtual"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Assist"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ants"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Fast"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + response"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + times"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + enable"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + seamless"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + voice"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + command"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + execution"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Online"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Gaming"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + can"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"power"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + game"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + NPCs"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + chat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + systems"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + role"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-playing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + game"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + mechanics"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"Improved"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + user"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + experience"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + provide"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + a"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + seamless"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + responsive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + user"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + experience"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + which"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + is"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + critical"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + that"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + require"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + rapid"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + user"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + input"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + such"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + as"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Search"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Fast"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + response"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + times"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + enable"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + users"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + quickly"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + find"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + relevant"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + results"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Sent"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"iment"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Analysis"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Real"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-time"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + user"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + feedback"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + enables"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + companies"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + respond"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + promptly"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + customer"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + concerns"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Language"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Translation"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + facilitate"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + instant"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + language"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + translation"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + making"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + it"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + easier"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + people"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + communicate"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + across"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + languages"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"Industry"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-specific"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + requirements"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Some"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + industries"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + such"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + as"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Healthcare"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + can"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + power"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + tele"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"medicine"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + enabling"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + real"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-time"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + communication"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + between"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + patients"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + healthcare"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + providers"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Finance"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Fast"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + financial"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + data"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + transactions"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + is"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + crucial"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + in"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + high"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-frequency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + trading"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + other"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + financial"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Autonomous"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Vehicles"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + can"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + aid"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + in"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + natural"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + language"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + text"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + understanding"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + autonomous"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + vehicle"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + navigation"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + control"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"Compet"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"itive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + advantage"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Companies"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + that"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + develop"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + deploy"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + can"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + gain"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + a"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + competitive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + advantage"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + in"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + their"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + respective"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + markets"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + as"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Faster"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + times"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + can"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + lead"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + improved"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + customer"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + satisfaction"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + loyalty"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Real"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-time"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + analytics"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + insights"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + can"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + inform"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + business"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + decisions"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + drive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + innovation"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + can"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + enable"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + companies"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + respond"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + quickly"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + changing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + market"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + conditions"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + customer"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + needs"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"Sc"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"al"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ability"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + performance"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + require"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + significant"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + computational"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + power"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + memory"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + resources"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Optim"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"izing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + latency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + often"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + necess"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"itates"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":":\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Special"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ized"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + hardware"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + like"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + graphics"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + units"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + ("},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"GP"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"Us"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":")"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + or"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + tensor"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + units"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + ("},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"TP"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"Us"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":").\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Advanced"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + software"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + optimizations"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + such"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + as"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + model"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + pruning"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + knowledge"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + dist"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"illation"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + parallel"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"\t"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"*"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + Scal"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"able"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + architecture"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + designs"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + handle"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + high"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + volumes"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + traffic"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + concurrent"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + requests"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":".\n\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"In"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + summary"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + crucial"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + that"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + require"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + real"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"-time"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + interaction"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + improved"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + user"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + experience"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + competitive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + advantage"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + By"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + optimizing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + latency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + developers"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + can"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + create"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + more"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + responsive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + efficient"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + effective"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + N"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"LP"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + that"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + drive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + business"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + success"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + user"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":" + satisfaction"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-57f58b0c-9fc7-4a25-b36e-66dc8318c3fe","object":"chat.completion.chunk","created":1719950018,"model":"llama3-8b-8192","system_fingerprint":"fp_873a560973","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"x_groq":{"id":"req_01j1tg51n4eew9ffakmz6evgxg","usage":{"queue_time":0.034240819,"prompt_tokens":20,"prompt_time":0.003810458,"completion_tokens":585,"completion_time":0.469916166,"total_tokens":605,"total_time":0.47372662400000004}}} + + + data: [DONE] + + + ' + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 89d12edd2a690db7-MRS + Cache-Control: + - no-cache + Connection: + - keep-alive + Content-Type: + - text/event-stream + Date: + - Tue, 02 Jul 2024 19:53:38 GMT + Server: + - cloudflare + Set-Cookie: + - __cf_bm=jYYwWVj7JDbnNpvAIVURQ8_AQlkEZIztp96sugxTFHQ-1719950018-1.0.1.1-QMvXust6TYY4sM2.Ftvy2eUEoLKkofjdjFdFm04nIrRLvjG05oLbCqWRnA863ALcZM4t3DLHnt.FJYCC_Rltgw; + path=/; expires=Tue, 02-Jul-24 20:23:38 GMT; domain=.groq.com; HttpOnly; Secure; + SameSite=None + Transfer-Encoding: + - chunked + alt-svc: + - h3=":443"; ma=86400 + vary: + - Origin + via: + - 1.1 google + x-ratelimit-limit-requests: + - '14400' + x-ratelimit-limit-tokens: + - '30000' + x-ratelimit-remaining-requests: + - '14396' + x-ratelimit-remaining-tokens: + - '29421' + x-ratelimit-reset-requests: + - 22.824s + x-ratelimit-reset-tokens: + - 1.157s + x-request-id: + - req_01j1tg51n4eew9ffakmz6evgxg + status: + code: 200 + message: OK +version: 1 diff --git a/src/tests/groq/cassettes/test_chat_completion.yaml b/src/tests/groq/cassettes/test_chat_completion.yaml new file mode 100644 index 00000000..77a9c52e --- /dev/null +++ b/src/tests/groq/cassettes/test_chat_completion.yaml @@ -0,0 +1,114 @@ +interactions: +- request: + body: '{"messages": [{"role": "user", "content": "Explain the importance of low + latency LLMs"}], "model": "llama3-8b-8192"}' + headers: + accept: + - application/json + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '116' + content-type: + - application/json + host: + - api.groq.com + user-agent: + - Groq/Python 0.9.0 + x-stainless-arch: + - arm64 + x-stainless-async: + - 'false' + x-stainless-lang: + - python + x-stainless-os: + - MacOS + x-stainless-package-version: + - 0.9.0 + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.11.5 + method: POST + uri: https://api.groq.com/openai/v1/chat/completions + response: + body: + string: !!binary | + H4sIAAAAAAAAA4xXTW/jRhK9768o8JQYlCBZsi3rFgQzSQBndvKBvawXRqlZJGvU7Ka7mtJoBv7v + QTVJWZY9mxzZ7GJXvXrvVfNrxkW2zkyN0TStnSyvLheFuSkmq9X1YrIszc1ks1iZSXG1uV7MFwZv + rzHLM7/5RCYOgVPjm9ZSZO+yPDOBMFKRrec389vbq9lsfpVnjS/IZuvMWmxwMVltJqv57aXurj0b + kmz9368Zu4I+Z+tZnjUkghVl669Z8JaydYYiLBFd1BjvIjk9/Q5DRXCHruqwIvhVTxH47u7uV/ke + LG8JYkAnpQ8NBYEadwSBdt52mix/oQJiTVAy2QJ8CQ5jF9CCHb/YBm9IhF0F3324+/g9bA5ADjdW + V6gs2TC5COgKfSITefciyJewQ4mAje9cFH2O9DlCgRGn8LPf045CrlkWrCmhBU0eDDrYEFhuOFKh + p8aaOEDNVQ3sSgrkDIHFSM4cctjXbOoUVSuKYdiOhW/1s8AOAqGdRG4IsG0tG9QXAvuaAoG0REUq + I5C03gnvyJEIYCAwoTOMdnrv7t2d34+npkxzQCsets7vHaBAqdWmEnwAdqllw8aEfoXsqADhynHJ + Rt9i1G4eszQK6IEwCBQdQfRjLRu2HA+60FLQlkJE2QrsOdbQdKZOh1MYSyDQagVije4VwlP4sybg + pvUhokLpS7BntY1d6BRRid4XUAbf9JTx1vq9thilJRNlrejMp3Bx8fubQF9crOEcvIQuiWj5aKH0 + 4VtdijVGCPTYcaAjrGOdkoNo+ZiSiBfwY41x46Okhu44xA4tHBUka3ivXTqDiZx0ygTCxmrnO6EA + 9LmlwMo1mfbffq7uKJKkMZsyXcNvHZvt6VJfpSOVBIZDqvJZK8Y3TeeGOocjPgwqPOr647kKW27J + siN5A9MkTzoR50s5prLYtV2c3rtL7dcvTRv8jorzirVj74905n7XsMlVWFEzSl8wspRoEok3BwhU + dEbP2yPHHt4cGtzqErtIod8q0PhAJ4rLeyMZ/SW9bQMZFkpvWgqiDE7G9bI1i1SJU/MVKo7Vm8Ob + vFNiD7D0WCRD6g981Abagwp7YHjpw0Cs973AXiJqkwnrB4SUXL9r9SSnu3pCj7WRjEplJ1zV8TW3 + SqJig2abglgR69n1bogvaEfWKx7qBwFbLuwBIkkcTKxkR4NxpNmjRywVox+9xMmRf+px30SoJtv2 + vVTNlQElhs5EVYnxMsiLHIXqAMY76Zp2YMB6rGfggTqGU4dV8rd+T6HsLNQYij0GWo+4Phv7KMlE + ZWnQWh0TqT/PxB7jB/TepUwmbxE/FUhhko6mYnzjw7PHCRU5NOy44S9puL2qa3rvrnoEm5YiJ/li + sUMXsUpi+Xeo0PGXU8sa+pSQKqi1/vC2y+pYAHwxFsxbx+iI6Luqqhk8pMGwpSg5tBgim85isAfd + ya7oJAamfzjmOLJBe+6m79nphBit7SX5y/RS3TtZ3ijsVK9KCh3ag/DI8J8JbazNselQMFbOC/ch + Ue9OyVZai86xq4a4n7BJbXzDfU/yUXbx6GYVNjROyjThkoNYPLzwr+m9u9amvhtNx9H+7+eWtqxz + 1ptt2t8JgUGhvojXg0tJp0a2Y9+JtqZpkwUatNCn7EVYqf488UGUKOeK0PvT2SQ/b9cPXfTON74T + 2FHNxtI48L4F2R8cOxy+iCqonhKJsoaFvZv05j00448GQ4TaN/rl/+j9daJX0uCtJY3Z6Y12mNbp + jP93+HHeng6GdNX6xYF0TYPhkL8WzT+9OeRng+s4NHLgYVqcDIt8tLvkb7nmuuOCAN9W48m8olfE + mcIPkhpZUKPbNMfB9o9Y9NYMVfB7yYfNyTCSBt66ku3ZWjWlyK6nijJa8+vvqKC/Cyp9qbEdnbfs + kmf7Ej7cfezvRBiUiicGMc2e8sz6qg1+I9naddbmWcmOpX5QlLzL1plE32ZP/8uzbvw7aYNv2vgQ + /ZacZOvLWX5c4oay9Ww6my0X18vV4lr/W8bfpGPA1Wr+cn2IWl5fr64uF1fzPIs+oj0GXM+el8a9 + N/PL+c18dfOUZ3KQSM1Dya6i0AZOf0ll+2CWeHNZbhaLWZZnnx+q4B81/fTvF+jxYTb/NI/V8vBp + Sfgoq8XerT6tLm9bt8qenv71FwAAAP//AwA+gIE4JQ4AAA== + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 89d12ec96e290db6-MRS + Cache-Control: + - private, max-age=0, no-store, no-cache, must-revalidate + Connection: + - keep-alive + Content-Encoding: + - gzip + Content-Type: + - application/json + Date: + - Tue, 02 Jul 2024 19:53:35 GMT + Server: + - cloudflare + Set-Cookie: + - __cf_bm=OFVZ5MTau_NNKPRUjheAMGYEZwox8.Qq_TAJs9A8z9o-1719950015-1.0.1.1-YU6dEHFQYzVO94VNwt3L81BuUTSs4sB_HQMi3jSugKQXoHPMGGETjuF.x_A_nltCq46MxBSKnw1V6rznSKA4ZQ; + path=/; expires=Tue, 02-Jul-24 20:23:35 GMT; domain=.groq.com; HttpOnly; Secure; + SameSite=None + Transfer-Encoding: + - chunked + alt-svc: + - h3=":443"; ma=86400 + vary: + - Origin + via: + - 1.1 google + x-ratelimit-limit-requests: + - '14400' + x-ratelimit-limit-tokens: + - '30000' + x-ratelimit-remaining-requests: + - '14399' + x-ratelimit-remaining-tokens: + - '29985' + x-ratelimit-reset-requests: + - 6s + x-ratelimit-reset-tokens: + - 30ms + x-request-id: + - req_01j1tg4yj4eaqs83wn8j829pn8 + status: + code: 200 + message: OK +version: 1 diff --git a/src/tests/groq/cassettes/test_chat_completion_streaming.yaml b/src/tests/groq/cassettes/test_chat_completion_streaming.yaml new file mode 100644 index 00000000..6be02057 --- /dev/null +++ b/src/tests/groq/cassettes/test_chat_completion_streaming.yaml @@ -0,0 +1,2512 @@ +interactions: +- request: + body: '{"messages": [{"role": "user", "content": "Explain the importance of low + latency LLMs"}], "model": "llama3-8b-8192", "stream": true}' + headers: + accept: + - application/json + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '132' + content-type: + - application/json + host: + - api.groq.com + user-agent: + - Groq/Python 0.9.0 + x-stainless-arch: + - arm64 + x-stainless-async: + - 'false' + x-stainless-lang: + - python + x-stainless-os: + - MacOS + x-stainless-package-version: + - 0.9.0 + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.11.5 + method: POST + uri: https://api.groq.com/openai/v1/chat/completions + response: + body: + string: 'data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}],"x_groq":{"id":"req_01j1tg50gcf2n974kzsyhw1eg0"}} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Large"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Language"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Models"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + ("},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LL"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Ms"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":")"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + have"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + revolution"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ized"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + field"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Natural"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Language"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + ("},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"N"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LP"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":")"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + by"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + enabling"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + a"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + wide"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + range"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + such"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + as"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + language"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + translation"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + text"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + summar"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ization"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + chat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"bots"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + in"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + particular"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + have"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + become"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + crucial"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + that"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + require"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + rapid"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + response"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + times"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + high"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + inter"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"activity"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + increased"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + user"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + engagement"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":".\n\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Here"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + some"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + reasons"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + why"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + important"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":":\n\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Improved"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + User"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Experience"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + enable"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + fast"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + responsive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + interactions"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + which"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + is"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + essential"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + like"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + chat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"bots"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + virtual"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + assistants"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + language"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + translation"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + services"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + A"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + delay"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + even"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + a"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + few"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + milliseconds"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + can"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + lead"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + frustration"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + abandonment"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + application"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Increased"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Inter"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"activity"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + allow"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + real"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-time"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + conversation"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + interaction"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + making"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + it"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + possible"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + users"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + engage"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + with"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + application"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + in"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + a"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + more"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + natural"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + convers"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ational"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + way"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + This"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + is"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + particularly"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + important"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + like"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + customer"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + support"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + where"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + rapid"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + response"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + times"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + critical"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Enh"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"anced"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Cognitive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Computing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + enable"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + cognitive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + computing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + that"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + require"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + instant"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + analysis"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + vast"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + amounts"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + data"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + These"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + such"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + as"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + predictive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + maintenance"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + anomaly"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + detection"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + sentiment"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + analysis"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + rely"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + on"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + rapid"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + inference"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + decision"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-making"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + drive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + insights"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + actions"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Compet"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"itive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Advantage"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Developing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + can"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + be"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + a"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + different"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"iator"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + businesses"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + organizations"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + enabling"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + them"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + offer"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + faster"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + more"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + responsive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + services"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + that"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + set"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + them"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + apart"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + from"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + competitors"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Sc"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"al"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ability"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Performance"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + designed"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + handle"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + large"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + volumes"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + data"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + traffic"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + making"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + them"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + suitable"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + that"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + require"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + scalability"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + high"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + performance"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"6"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Edge"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Computing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + With"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + rise"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Edge"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Computing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + necessary"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + data"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + closer"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + source"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + reducing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + latency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + improving"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + response"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + times"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Edge"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + enable"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + real"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-time"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + analysis"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + data"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + at"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Edge"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + eliminating"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + need"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + data"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + be"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + transmitted"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + cloud"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + or"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + a"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + remote"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + server"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"7"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Critical"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Infrastructure"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + critical"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + that"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + support"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + critical"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + infrastructure"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + such"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + as"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + healthcare"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + finance"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + public"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + safety"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Rapid"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + response"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + times"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + essential"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + ensuring"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + stability"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + security"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + these"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + systems"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"8"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Personal"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ization"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Context"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ual"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ization"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + enable"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + personalized"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + context"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-specific"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + allowing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + adapt"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + to"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + user"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + preferences"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + behaviors"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + environments"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + in"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + real"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-time"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"9"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Edge"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + AI"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + a"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + key"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + component"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Edge"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + AI"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + enabling"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + real"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-time"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + inference"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + analysis"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + decision"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-making"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + at"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + Edge"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + This"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + is"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + particularly"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + important"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + like"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + autonomous"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + driving"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + where"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + rapid"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + decision"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-making"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + essential"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + ensuring"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + safety"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":".\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"10"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + **"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Future"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"Proof"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"**:"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + As"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + more"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + rely"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + on"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + will"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + become"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + standard"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + N"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LP"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + By"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + developing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + now"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + organizations"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + can"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + future"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-proof"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + their"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + ensure"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + they"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + remain"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + competitive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + in"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + the"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + market"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":".\n\n"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"In"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + summary"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + low"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"-lat"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"ency"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + L"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LM"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"s"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + are"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + essential"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + for"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + a"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + wide"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + range"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + applications"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + that"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + require"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + rapid"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + response"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + times"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + high"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + inter"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"activity"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + increased"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + user"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + engagement"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + They"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + enable"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + improved"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + user"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + experience"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + enhanced"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + cognitive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + computing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + competitive"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + advantage"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + and"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + scalability"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + making"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + them"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + a"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + crucial"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + component"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + of"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + modern"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + N"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"LP"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":" + processing"},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + + + data: {"id":"chatcmpl-8493128a-028b-41f8-95a0-f461322ab523","object":"chat.completion.chunk","created":1719950017,"model":"llama3-8b-8192","system_fingerprint":"fp_af05557ca2","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"x_groq":{"id":"req_01j1tg50gcf2n974kzsyhw1eg0","usage":{"queue_time":0.039546629,"prompt_tokens":20,"prompt_time":0.003844837,"completion_tokens":656,"completion_time":0.524701173,"total_tokens":676,"total_time":0.52854601}}} + + + data: [DONE] + + + ' + headers: + CF-Cache-Status: + - DYNAMIC + CF-RAY: + - 89d12ed5dc510d86-MRS + Cache-Control: + - no-cache + Connection: + - keep-alive + Content-Type: + - text/event-stream + Date: + - Tue, 02 Jul 2024 19:53:37 GMT + Server: + - cloudflare + Set-Cookie: + - __cf_bm=jSDP7RQDj1qyy2aMRqnvYG40kk5P3FRdGbTTD22lT3c-1719950017-1.0.1.1-ksQ111yHrI20VcOS5OS76C5u1cZ4PEq7.ykuDQVAamLOtlMP23tcaE5IBrNLcUPjurszATtpMzW14Oi8fxUNTA; + path=/; expires=Tue, 02-Jul-24 20:23:37 GMT; domain=.groq.com; HttpOnly; Secure; + SameSite=None + Transfer-Encoding: + - chunked + alt-svc: + - h3=":443"; ma=86400 + vary: + - Origin + via: + - 1.1 google + x-ratelimit-limit-requests: + - '14400' + x-ratelimit-limit-tokens: + - '30000' + x-ratelimit-remaining-requests: + - '14397' + x-ratelimit-remaining-tokens: + - '29509' + x-ratelimit-reset-requests: + - 17.116999999s + x-ratelimit-reset-tokens: + - 981ms + x-request-id: + - req_01j1tg50gcf2n974kzsyhw1eg0 + status: + code: 200 + message: OK +version: 1 diff --git a/src/tests/groq/conftest.py b/src/tests/groq/conftest.py new file mode 100644 index 00000000..7b5e3172 --- /dev/null +++ b/src/tests/groq/conftest.py @@ -0,0 +1,33 @@ +import os +import pytest + +from groq import Groq, AsyncGroq +from langtrace_python_sdk.instrumentation import GroqInstrumentation +from dotenv import load_dotenv + +load_dotenv() + + +@pytest.fixture(autouse=True) +def environment(): + os.environ["GROQ_API_KEY"] = "test_api_key" + + +@pytest.fixture +def groq_client(): + return Groq() + + +@pytest.fixture +def async_groq_client(): + return AsyncGroq() + + +@pytest.fixture(scope="module") +def vcr_config(): + return {"filter_headers": ["authorization", "api-key"]} + + +@pytest.fixture(scope="session", autouse=True) +def instrument(): + GroqInstrumentation().instrument() diff --git a/src/tests/groq/test_groq.py b/src/tests/groq/test_groq.py new file mode 100644 index 00000000..1309d4da --- /dev/null +++ b/src/tests/groq/test_groq.py @@ -0,0 +1,142 @@ +from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME +from langtrace_python_sdk.constants.instrumentation.groq import APIS +import pytest +from langtrace.trace_attributes import SpanAttributes +from importlib_metadata import version as v +from tests.utils import ( + assert_completion_in_events, + assert_prompt_in_events, + assert_response_format, + assert_token_count, +) + + +@pytest.mark.vcr +def test_chat_completion(exporter, groq_client): + chat_completion = groq_client.chat.completions.create( + messages=[ + { + "role": "user", + "content": "Explain the importance of low latency LLMs", + } + ], + model="llama3-8b-8192", + ) + + spans = exporter.get_finished_spans() + groq_span = spans[-1] + + assert groq_span.name == "groq.chat.completions.create" + attributes = groq_span.attributes + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == LANGTRACE_SDK_NAME + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) == "Groq" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("groq") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v(LANGTRACE_SDK_NAME) + assert attributes.get(SpanAttributes.LLM_URL) == "https://api.groq.com" + assert ( + attributes.get(SpanAttributes.LLM_PATH) == APIS["CHAT_COMPLETION"]["ENDPOINT"] + ) + assert_token_count(attributes) + assert_prompt_in_events(groq_span.events) + assert_completion_in_events(groq_span.events) + + +@pytest.mark.vcr() +@pytest.mark.asyncio() +async def test_async_chat_completion(exporter, async_groq_client): + chat_completion = await async_groq_client.chat.completions.create( + messages=[ + { + "role": "user", + "content": "Explain the importance of low latency LLMs", + } + ], + model="llama3-8b-8192", + ) + spans = exporter.get_finished_spans() + groq_span = spans[-1] + + assert groq_span.name == "groq.chat.completions.create" + attributes = groq_span.attributes + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == LANGTRACE_SDK_NAME + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) == "Groq" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("groq") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v(LANGTRACE_SDK_NAME) + assert attributes.get(SpanAttributes.LLM_URL) == "https://api.groq.com" + assert ( + attributes.get(SpanAttributes.LLM_PATH) == APIS["CHAT_COMPLETION"]["ENDPOINT"] + ) + assert_token_count(attributes) + assert_prompt_in_events(groq_span.events) + assert_completion_in_events(groq_span.events) + + +@pytest.mark.vcr() +def test_chat_completion_streaming(exporter, groq_client): + chat_completion = groq_client.chat.completions.create( + messages=[ + { + "role": "user", + "content": "Explain the importance of low latency LLMs", + } + ], + stream=True, + model="llama3-8b-8192", + ) + + for _ in chat_completion: + pass + + spans = exporter.get_finished_spans() + groq_span = spans[-1] + assert groq_span.name == "groq.chat.completions.create" + attributes = groq_span.attributes + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == LANGTRACE_SDK_NAME + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) == "Groq" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("groq") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v(LANGTRACE_SDK_NAME) + assert attributes.get(SpanAttributes.LLM_URL) == "https://api.groq.com" + assert ( + attributes.get(SpanAttributes.LLM_PATH) == APIS["CHAT_COMPLETION"]["ENDPOINT"] + ) + + assert_token_count(attributes) + assert_completion_in_events(groq_span.events) + + +@pytest.mark.vcr() +@pytest.mark.asyncio() +async def test_async_chat_completion_streaming(async_groq_client, exporter): + chat_completion = await async_groq_client.chat.completions.create( + messages=[ + { + "role": "user", + "content": "Explain the importance of low latency LLMs", + } + ], + stream=True, + model="llama3-8b-8192", + ) + + async for _ in chat_completion: + pass + + spans = exporter.get_finished_spans() + groq_span = spans[-1] + assert groq_span.name == "groq.chat.completions.create" + attributes = groq_span.attributes + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == LANGTRACE_SDK_NAME + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) == "Groq" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("groq") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v(LANGTRACE_SDK_NAME) + assert attributes.get(SpanAttributes.LLM_URL) == "https://api.groq.com" + assert ( + attributes.get(SpanAttributes.LLM_PATH) == APIS["CHAT_COMPLETION"]["ENDPOINT"] + ) + + assert_token_count(attributes) + assert_completion_in_events(groq_span.events) diff --git a/src/tests/openai/cassettes/test_async_chat_completion_streaming.yaml b/src/tests/openai/cassettes/test_async_chat_completion_streaming.yaml index 2b219f41..dceb4595 100644 --- a/src/tests/openai/cassettes/test_async_chat_completion_streaming.yaml +++ b/src/tests/openai/cassettes/test_async_chat_completion_streaming.yaml @@ -6,7 +6,7 @@ interactions: accept: - application/json accept-encoding: - - gzip, deflate + - gzip, deflate, br connection: - keep-alive content-length: @@ -35,66 +35,66 @@ interactions: uri: https://api.openai.com/v1/chat/completions response: body: - string: 'data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]} + string: 'data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"This"},"logprobs":null,"finish_reason":null}]} + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"This"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" is"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" a"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" test"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" This"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" is"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" a"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" test"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" This"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" is"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" a"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":" test"},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]} - data: {"id":"chatcmpl-9deeLdQVwFn9pGfxPrHrnGhzMINed","object":"chat.completion.chunk","created":1719238077,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]} + data: {"id":"chatcmpl-9eMqF91g3NE1pyxZvquq7cplPnrXE","object":"chat.completion.chunk","created":1719407951,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]} data: [DONE] @@ -105,20 +105,20 @@ interactions: CF-Cache-Status: - DYNAMIC CF-RAY: - - 898d497cff180da3-MRS + - 899d7cd0ed680db9-MRS Connection: - keep-alive Content-Type: - text/event-stream; charset=utf-8 Date: - - Mon, 24 Jun 2024 14:07:57 GMT + - Wed, 26 Jun 2024 13:19:12 GMT Server: - cloudflare Set-Cookie: - - __cf_bm=9.DjXDRH6yqveelPQR44ZtyVUYJzgnA0G.nzqFBokzU-1719238077-1.0.1.1-aMCvEWGLFuE6ItsOru0NDaEtwnP4gVQChxLODAqfb5jmClZJa8lKqg.tNgoeMSGnxhnih1YJRhw2gq02fThn1g; - path=/; expires=Mon, 24-Jun-24 14:37:57 GMT; domain=.api.openai.com; HttpOnly; + - __cf_bm=Koulk3jjfKTtiwmlpNUH5Uye51Zphg2V.pD_ZnQF2ZE-1719407952-1.0.1.1-1_bGj0x07cc6IT0NHiXCIjjTnk5qDAJ.123pg_4.g85iZakVAGtWPnz7bbLr8y8IBPOXwA7X5KnPl67mbAHuFQ; + path=/; expires=Wed, 26-Jun-24 13:49:12 GMT; domain=.api.openai.com; HttpOnly; Secure; SameSite=None - - _cfuvid=O9yzYcvRGvChbCerFoeKPvIqX_jwhxHPRVMMxoF4wLY-1719238077679-0.0.1.1-604800000; + - _cfuvid=Di5O_shad8PpLIGwUHtQVySW5EcyGPn98xWvMpFs.fc-1719407952314-0.0.1.1-604800000; path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None Transfer-Encoding: - chunked @@ -127,7 +127,7 @@ interactions: openai-organization: - scale3-1 openai-processing-ms: - - '193' + - '206' openai-version: - '2020-10-01' strict-transport-security: @@ -135,17 +135,17 @@ interactions: x-ratelimit-limit-requests: - '10000' x-ratelimit-limit-tokens: - - '300000' + - '1000000' x-ratelimit-remaining-requests: - '9999' x-ratelimit-remaining-tokens: - - '299975' + - '999975' x-ratelimit-reset-requests: - 6ms x-ratelimit-reset-tokens: - - 5ms + - 1ms x-request-id: - - ae303b10004d584d9da9cb432917ef64 + - 98bad879df65b3adda303922fbc539cf status: code: 200 message: OK diff --git a/src/tests/openai/test_chat_completion.py b/src/tests/openai/test_chat_completion.py index 3b3d6738..b503cefc 100644 --- a/src/tests/openai/test_chat_completion.py +++ b/src/tests/openai/test_chat_completion.py @@ -1,8 +1,14 @@ import pytest import json from langtrace_python_sdk.constants.instrumentation.openai import APIS -from tests.utils import assert_response_format, assert_token_count +from tests.utils import ( + assert_completion_in_events, + assert_prompt_in_events, + assert_response_format, + assert_token_count, +) from importlib_metadata import version as v +from langtrace.trace_attributes import SpanAttributes @pytest.mark.vcr() @@ -22,33 +28,22 @@ def test_chat_completion(exporter, openai_client): assert completion_span.name == "openai.chat.completions.create" attributes = completion_span.attributes - assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk" - assert attributes.get("langtrace.service.name") == "OpenAI" - assert attributes.get("langtrace.service.type") == "llm" - assert attributes.get("langtrace.service.version") == v("openai") - assert attributes.get("langtrace.version") == v("langtrace-python-sdk") - assert attributes.get("url.full") == "https://api.openai.com/v1/" - assert attributes.get("llm.api") == APIS["CHAT_COMPLETION"]["ENDPOINT"] - assert attributes.get("llm.model") == "gpt-4-0613" - assert attributes.get("llm.prompts") == json.dumps(messages_value) - assert attributes.get("llm.stream") is False - assert_token_count(attributes) - assert_response_format(attributes) - - langtrace_responses = json.loads(attributes.get("llm.responses")) - assert isinstance(langtrace_responses, list) - for langtrace_response in langtrace_responses: - assert isinstance(langtrace_response, dict) - assert "role" in langtrace_response - assert "content" in langtrace_response + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == "langtrace-python-sdk" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) == "OpenAI" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("openai") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v("langtrace-python-sdk") + assert attributes.get(SpanAttributes.LLM_URL) == "https://api.openai.com/v1/" + assert ( + attributes.get(SpanAttributes.LLM_PATH) == APIS["CHAT_COMPLETION"]["ENDPOINT"] + ) + assert attributes.get(SpanAttributes.LLM_RESPONSE_MODEL) == "gpt-4-0613" + assert_prompt_in_events(completion_span.events) + assert_completion_in_events(completion_span.events) + assert attributes.get(SpanAttributes.LLM_IS_STREAMING) is False - langtrace_responses = json.loads(attributes.get("llm.responses")) - assert isinstance(langtrace_responses, list) - for langtrace_response in langtrace_responses: - assert isinstance(langtrace_response, dict) - assert "role" in langtrace_response - assert "content" in langtrace_response + assert_token_count(attributes) @pytest.mark.vcr() @@ -64,6 +59,7 @@ def test_chat_completion_streaming(exporter, openai_client): chunk_count = 0 response = openai_client.chat.completions.create(**kwargs) + for _ in response: chunk_count += 1 @@ -73,36 +69,24 @@ def test_chat_completion_streaming(exporter, openai_client): assert streaming_span.name == "openai.chat.completions.create" attributes = streaming_span.attributes - assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk" - assert attributes.get("langtrace.service.name") == "OpenAI" - assert attributes.get("langtrace.service.type") == "llm" - assert attributes.get("langtrace.service.version") == v("openai") - assert attributes.get("langtrace.version") == v("langtrace-python-sdk") - assert attributes.get("url.full") == "https://api.openai.com/v1/" - assert attributes.get("llm.api") == APIS["CHAT_COMPLETION"]["ENDPOINT"] - assert attributes.get("llm.model") == "gpt-4-0613" - assert attributes.get("llm.prompts") == json.dumps(messages_value) - assert attributes.get("llm.stream") is True + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == "langtrace-python-sdk" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) == "OpenAI" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("openai") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v("langtrace-python-sdk") + assert attributes.get(SpanAttributes.LLM_URL) == "https://api.openai.com/v1/" + assert ( + attributes.get(SpanAttributes.LLM_PATH) == APIS["CHAT_COMPLETION"]["ENDPOINT"] + ) + assert attributes.get(SpanAttributes.LLM_RESPONSE_MODEL) == "gpt-4-0613" + assert_prompt_in_events(streaming_span.events) + assert_completion_in_events(streaming_span.events) + assert attributes.get(SpanAttributes.LLM_IS_STREAMING) is True events = streaming_span.events - assert len(events) - 2 == chunk_count # -2 for start and end events + assert len(events) - 4 == chunk_count # -2 for start and end events assert_token_count(attributes) - assert_response_format(attributes) - - langtrace_responses = json.loads(attributes.get("llm.responses")) - assert isinstance(langtrace_responses, list) - for langtrace_response in langtrace_responses: - assert isinstance(langtrace_response, dict) - assert "role" in langtrace_response - assert "content" in langtrace_response - - langtrace_responses = json.loads(attributes.get("llm.responses")) - assert isinstance(langtrace_responses, list) - for langtrace_response in langtrace_responses: - assert isinstance(langtrace_response, dict) - assert "role" in langtrace_response - assert "content" in langtrace_response @pytest.mark.vcr() @@ -118,9 +102,9 @@ async def test_async_chat_completion_streaming(exporter, async_openai_client): } chunk_count = 0 - with await async_openai_client.chat.completions.create(**kwargs) as response: - async for _ in response: - chunk_count += 1 + response = await async_openai_client.chat.completions.create(**kwargs) + async for chunk in response: + chunk_count += 1 spans = exporter.get_finished_spans() streaming_span = spans[-1] @@ -128,19 +112,21 @@ async def test_async_chat_completion_streaming(exporter, async_openai_client): assert streaming_span.name == "openai.chat.completions.create" attributes = streaming_span.attributes - assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk" - assert attributes.get("langtrace.service.name") == "OpenAI" - assert attributes.get("langtrace.service.type") == "llm" - assert attributes.get("langtrace.service.version") == v("openai") - assert attributes.get("langtrace.version") == v("langtrace-python-sdk") - assert attributes.get("url.full") == "https://api.openai.com/v1/" - assert attributes.get("llm.api") == APIS["CHAT_COMPLETION"]["ENDPOINT"] - assert attributes.get("llm.model") == "gpt-4-0613" - assert attributes.get("llm.prompts") == json.dumps(messages_value) - assert attributes.get("llm.stream") is True + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == "langtrace-python-sdk" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) == "OpenAI" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("openai") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v("langtrace-python-sdk") + assert attributes.get(SpanAttributes.LLM_URL) == "https://api.openai.com/v1/" + assert ( + attributes.get(SpanAttributes.LLM_PATH) == APIS["CHAT_COMPLETION"]["ENDPOINT"] + ) + assert attributes.get(SpanAttributes.LLM_RESPONSE_MODEL) == "gpt-4-0613" + assert_prompt_in_events(streaming_span.events) + assert_completion_in_events(streaming_span.events) + assert attributes.get(SpanAttributes.LLM_IS_STREAMING) is True events = streaming_span.events - assert len(events) - 2 == chunk_count # -2 for start and end events + assert len(events) - 4 == chunk_count # -2 for start and end events assert_token_count(attributes) - assert_response_format(attributes) diff --git a/src/tests/openai/test_image_generation.py b/src/tests/openai/test_image_generation.py index 79d16674..fc6c6208 100644 --- a/src/tests/openai/test_image_generation.py +++ b/src/tests/openai/test_image_generation.py @@ -2,6 +2,7 @@ import json from langtrace_python_sdk.constants.instrumentation.openai import APIS from importlib_metadata import version as v +from langtrace.trace_attributes import SpanAttributes @pytest.mark.vcr() @@ -20,23 +21,34 @@ def test_image_generation(openai_client, exporter): assert image_generation_span.name == "openai.images.generate" attributes = image_generation_span.attributes - assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk" - assert attributes.get("langtrace.service.name") == "OpenAI" - assert attributes.get("langtrace.service.type") == "llm" - assert attributes.get("langtrace.service.version") == v("openai") - assert attributes.get("langtrace.version") == v("langtrace-python-sdk") - assert attributes.get("url.full") == "https://api.openai.com/v1/" - assert attributes.get("llm.api") == APIS["IMAGES_GENERATION"]["ENDPOINT"] - assert attributes.get("llm.model") == llm_model_value - prompts = json.loads(attributes.get("llm.prompts")) - assert prompts[0]["content"] == prompt - - langtrace_responses = json.loads(attributes.get("llm.responses")) + events = image_generation_span.events + + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == "langtrace-python-sdk" + + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) == "OpenAI" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("openai") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v("langtrace-python-sdk") + assert attributes.get(SpanAttributes.LLM_URL) == "https://api.openai.com/v1/" + + assert ( + attributes.get(SpanAttributes.LLM_PATH) == APIS["IMAGES_GENERATION"]["ENDPOINT"] + ) + + assert attributes.get(SpanAttributes.LLM_REQUEST_MODEL) == llm_model_value + + # prompts = json.loads(attributes.get(SpanAttributes.LLM_PROMPTS)) + # assert prompts[0]["content"] == prompt + + langtrace_responses = json.loads( + events[-1].attributes.get(SpanAttributes.LLM_COMPLETIONS) + ) assert isinstance(langtrace_responses, list) for langtrace_response in langtrace_responses: assert isinstance(langtrace_response, dict) assert "role" in langtrace_response assert "content" in langtrace_response + assert response.data[0].url == langtrace_response["content"]["url"] assert ( response.data[0].revised_prompt @@ -61,23 +73,34 @@ async def test_async_image_generation(async_openai_client, exporter): assert image_generation_span.name == "openai.images.generate" attributes = image_generation_span.attributes - assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk" - assert attributes.get("langtrace.service.name") == "OpenAI" - assert attributes.get("langtrace.service.type") == "llm" - assert attributes.get("langtrace.service.version") == v("openai") - assert attributes.get("langtrace.version") == v("langtrace-python-sdk") - assert attributes.get("url.full") == "https://api.openai.com/v1/" - assert attributes.get("llm.api") == APIS["IMAGES_GENERATION"]["ENDPOINT"] - assert attributes.get("llm.model") == llm_model_value - prompts = json.loads(attributes.get("llm.prompts")) - assert prompts[0]["content"] == prompt - - langtrace_responses = json.loads(attributes.get("llm.responses")) + events = image_generation_span.events + + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == "langtrace-python-sdk" + + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) == "OpenAI" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == "llm" + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v("openai") + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v("langtrace-python-sdk") + assert attributes.get(SpanAttributes.LLM_URL) == "https://api.openai.com/v1/" + + assert ( + attributes.get(SpanAttributes.LLM_PATH) == APIS["IMAGES_GENERATION"]["ENDPOINT"] + ) + + assert attributes.get(SpanAttributes.LLM_REQUEST_MODEL) == llm_model_value + + # prompts = json.loads(attributes.get(SpanAttributes.LLM_PROMPTS)) + # assert prompts[0]["content"] == prompt + + langtrace_responses = json.loads( + events[-1].attributes.get(SpanAttributes.LLM_COMPLETIONS) + ) assert isinstance(langtrace_responses, list) for langtrace_response in langtrace_responses: assert isinstance(langtrace_response, dict) assert "role" in langtrace_response assert "content" in langtrace_response + assert response.data[0].url == langtrace_response["content"]["url"] assert ( response.data[0].revised_prompt diff --git a/src/tests/utils.py b/src/tests/utils.py index b6d12afb..f2f59972 100644 --- a/src/tests/utils.py +++ b/src/tests/utils.py @@ -1,5 +1,8 @@ from unittest.mock import MagicMock, patch import json +from langtrace.trace_attributes import SpanAttributes +from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME +from importlib_metadata import version as v def common_setup(data, method_to_mock=None): @@ -22,10 +25,9 @@ def common_setup(data, method_to_mock=None): def assert_token_count(attributes): - tokens = json.loads(attributes.get("llm.token.counts")) - output_tokens = tokens.get("output_tokens") - prompt_tokens = tokens.get("input_tokens") - total_tokens = tokens.get("total_tokens") + output_tokens = attributes.get(SpanAttributes.LLM_USAGE_COMPLETION_TOKENS) + prompt_tokens = attributes.get(SpanAttributes.LLM_USAGE_PROMPT_TOKENS) + total_tokens = attributes.get(SpanAttributes.LLM_USAGE_TOTAL_TOKENS) assert ( output_tokens is not None @@ -36,9 +38,42 @@ def assert_token_count(attributes): def assert_response_format(attributes): - langtrace_responses = json.loads(attributes.get("llm.responses")) + + langtrace_responses = json.loads(attributes.get(SpanAttributes.LLM_COMPLETIONS)) + assert isinstance(langtrace_responses, list) for langtrace_response in langtrace_responses: assert isinstance(langtrace_response, dict) assert "role" in langtrace_response assert "content" in langtrace_response + + +def assert_langtrace_attributes(attributes, vendor, vendor_type="llm"): + + assert attributes.get(SpanAttributes.LANGTRACE_SDK_NAME) == LANGTRACE_SDK_NAME + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_NAME) == vendor + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_TYPE) == vendor_type + assert attributes.get(SpanAttributes.LANGTRACE_SERVICE_VERSION) == v(vendor.lower()) + assert attributes.get(SpanAttributes.LANGTRACE_VERSION) == v(LANGTRACE_SDK_NAME) + + +def assert_prompt_in_events( + events, +): + prompt_event = list( + filter(lambda event: event.name == SpanAttributes.LLM_CONTENT_PROMPT, events) + ) + + assert prompt_event + + +def assert_completion_in_events( + events, +): + completion_event = list( + filter( + lambda event: event.name == SpanAttributes.LLM_CONTENT_COMPLETION, events + ) + ) + + assert completion_event