Compare commits

...

47 Commits

Author SHA1 Message Date
João Moura
464dfc4e67 preparing new version 0.14.0 2024-02-22 16:10:17 -03:00
João Moura
1c7f9826b4 adding new converter logic 2024-02-22 15:16:17 -03:00
João Moura
e397a49c23 Updatign prompts 2024-02-22 15:13:41 -03:00
João Moura
8c925237e7 preparing new RC 2024-02-20 17:56:55 -03:00
João Moura
0593d52b91 Improving inner prompts 2024-02-20 17:53:30 -03:00
João Moura
7b7d714109 preparing new version 2024-02-20 10:40:57 -03:00
João Moura
e9aa87f62b Updating tests 2024-02-20 10:40:37 -03:00
João Moura
8f5d735b2f bug fixing 2024-02-20 10:40:16 -03:00
João Moura
e24f4867df Preparing new version 2024-02-19 22:50:38 -03:00
João Moura
ef024ca106 improving reliability for agent tools 2024-02-19 22:48:47 -03:00
João Moura
4c519d9d98 updating tests 2024-02-19 22:48:34 -03:00
João Moura
94cb96b288 Increasing timeout for telemetry 2024-02-19 22:48:14 -03:00
João Moura
108a0d36b7 Adding support to export tasks as json, pydantic objects, and save as file 2024-02-19 22:46:34 -03:00
João Moura
efb097a76b Adding new tool usage and parsing logic 2024-02-19 22:43:10 -03:00
João Moura
af03042852 Updating docs 2024-02-19 22:01:09 -03:00
João Moura
21667bc7e1 adding more error logging and preparing new version 2024-02-15 23:49:30 -03:00
João Moura
19b6c15fff Cutting new version with tool ussage bug fix 2024-02-15 23:19:12 -03:00
João Moura
3ef502024d preparing new version 2024-02-13 02:58:16 -08:00
João Moura
e55cee7372 adding function calling llm support 2024-02-13 02:57:12 -08:00
João Moura
b72eb838c2 updating readme 2024-02-13 01:50:23 -08:00
João Moura
b21191dd55 updating tests 2024-02-13 01:50:12 -08:00
João Moura
76b17a8d04 renaming function for tools 2024-02-12 16:48:14 -08:00
João Moura
e97d1a0cf8 removing hostname from default telemetry 2024-02-12 16:11:15 -08:00
João Moura
c875d887b7 Crewating a tool output parser 2024-02-12 14:24:36 -08:00
João Moura
44d9cbca81 adding regexp as dependency 2024-02-12 14:13:20 -08:00
João Moura
6e399101fd refactoring default agent tools 2024-02-12 13:27:02 -08:00
João Moura
e8e3617ba6 allowing to set model naem through env var 2024-02-12 13:24:01 -08:00
João Moura
45fa30c007 avoinding telemetry errors 2024-02-12 13:23:40 -08:00
João Moura
15768d9c4d updating LLM connection docs 2024-02-12 13:21:43 -08:00
João Moura
a1fcaa398c updating versions and adding instructor 2024-02-12 13:20:28 -08:00
João Moura
871643d98d updating codeignore 2024-02-11 20:37:42 -08:00
João Moura
91659d6488 counting for tool retries on the acutal usage 2024-02-10 13:14:00 -08:00
João Moura
0076ea7bff Adding ability to remember instruction after using too many tools 2024-02-10 12:53:02 -08:00
João Moura
e79da7bc05 refactoring task execution 2024-02-10 11:28:08 -08:00
João Moura
00206a62ab Revamping tool usage 2024-02-10 10:36:34 -08:00
João Moura
d0b0a33be3 updating translations 2024-02-10 01:08:04 -08:00
João Moura
6ea21e95b6 Adding printer logic 2024-02-10 00:57:04 -08:00
João Moura
c226dafd0d updating dependencies 2024-02-10 00:56:25 -08:00
João Moura
d4c21a23f4 updating all cassettes 2024-02-10 00:55:40 -08:00
João Moura
b76ae5b921 avoind unnecesarry telemetry errors 2024-02-09 10:48:45 -08:00
João Moura
b48e5af9a0 include agentFinish as part of step callback 2024-02-09 02:00:41 -08:00
João Moura
d36c2a74cb recreating executor upon setting new step_callback 2024-02-09 01:52:28 -08:00
João Moura
a1e0596450 adding crew step_callback 2024-02-09 01:24:31 -08:00
João Moura
596e243374 adding support for step_callback 2024-02-08 23:56:13 -08:00
João Moura
326ad08ba2 adding support for full_ouput in crews 2024-02-08 23:23:34 -08:00
João Moura
f63d4edbb4 adding agent step callback 2024-02-08 23:01:30 -08:00
João Moura
0057ed6786 adding user the otpion to share all data of their crews 2024-02-08 23:01:02 -08:00
77 changed files with 59403 additions and 8760 deletions

2
.gitignore vendored
View File

@@ -5,4 +5,4 @@ dist/
.env
assets/*
.idea
test.py
test/

View File

@@ -252,15 +252,27 @@ There is NO data being collected on the prompts, tasks descriptions agents backs
Data collected includes:
- Version of crewAI
- So we can understand how many users are using the latest version
- Version of Python
- So we can decide on what versions to better support
- General OS (e.g. number of CPUs, macOS/Windows/Linux)
- So we know what OS we should focus on and if we could build specific OS related features
- Number of agents and tasks in a crew
- So we make sure we are testing internally with similar use cases and educate people on the best practices
- Crew Process being used
- Understand where we should focus our efforts
- If Agents are using memory or allowing delegation
- Understand if we improved the features or maybe even drop them
- If Tasks are being executed in parallel or sequentially
- Understand if we should focus more on parallel execution
- Language model being used
- Improved support on most used languages
- Roles of agents in a crew
- Understand high level use cases so we can build better tools, integrations and examples about it
- Tools names available
- Understand out of the publically available tools, which ones are being used the most so we can improve them
Users can opt-in sharing the complete telemetry data by setting the `share_crew` attribute to `True` on their Crews.
## License

View File

@@ -20,12 +20,14 @@ description: What are crewAI Agents and how to use them.
| **Role** | Defines the agent's function within the crew. It determines the kind of tasks the agent is best suited for. |
| **Goal** | The individual objective that the agent aims to achieve. It guides the agent's decision-making process. |
| **Backstory** | Provides context to the agent's role and goal, enriching the interaction and collaboration dynamics. |
| **LLM** | The language model used by the agent to process and generate text. |
| **Tools** | Set of capabilities or functions that the agent can use to perform tasks. Tools can be shared or exclusive to specific agents. |
| **Function Calling LLM** | The language model used by this agent to call functions, if none is passed the same main llm for each agent will be used. |
| **Max Iter** | The maximum number of iterations the agent can perform before forced to give its best answer |
| **Max RPM** | The maximum number of requests per minute the agent can perform to avoid rate limits |
| **Verbose** | This allow you to actually see what is going on during the Crew execution. |
| **Allow Delegation** | Agents can delegate tasks or questions to one another, ensuring that each task is handled by the most suitable agent. |
| **Step Callback** | A function that is called after each step of the agent. This can be used to log the agent's actions or to perform other operations. It will overwrite the crew `step_callback` |
## Creating an Agent
@@ -47,10 +49,13 @@ agent = Agent(
You're currently working on a project to analyze the
performance of our marketing campaigns.""",
tools=[my_tool1, my_tool2],
llm=my_llm,
function_calling_llm=my_llm,
max_iter=10,
max_rpm=10,
verbose=True,
allow_delegation=True
allow_delegation=True,
step_callback=my_intermediate_step_callback
)
```

View File

@@ -16,9 +16,14 @@ description: Understanding and utilizing crews in the crewAI framework.
| **Process** | The process flow (e.g., sequential, hierarchical) the crew follows. |
| **Verbose** | The verbosity level for logging during execution. |
| **Manager LLM** | The language model used by the manager agent in a hierarchical process. |
| **Function Calling LLM** | The language model used by all agensts in the crew to call functions, if none is passed the same main llm for each agent will be used. |
| **Config** | Configuration settings for the crew. |
| **Max RPM** | Maximum requests per minute the crew adheres to during execution. |
| **Language** | Language setting for the crew's operation. |
| **Full Output** | Whether the crew should return the full output with all tasks outputs or just the final output. |
| **Step Callback** | A function that is called after each step of every agent. This can be used to log the agent's actions or to perform other operations, it won't override the agent specific `step_callback` |
| **Share Crew** | Whether you want to share the complete crew infromation and execution with the crewAI team to make the library better, and allow us to train models. |
!!! note "Crew Max RPM"
The `max_rpm` attribute sets the maximum number of requests per minute the crew can perform to avoid rate limits and will override individual agents `max_rpm` settings if you set it.
@@ -55,6 +60,7 @@ my_crew = Crew(
agents=[researcher, writer],
tasks=[research_task, write_article_task],
process=Process.sequential,
full_output=True,
verbose=True
)
```

View File

@@ -19,6 +19,9 @@ Tasks in CrewAI can be designed to require collaboration between agents. For exa
| **Tools** *(optional)* | These are the functions or capabilities the agent can utilize to perform the task. They can be anything from simple actions like 'search' to more complex interactions with other agents or APIs. |
| **Async Execution** *(optional)* | If the task should be executed asynchronously. |
| **Context** *(optional)* | Other tasks that will have their output used as context for this task, if one is an asynchronous task it will wait for that to finish |
| **Output JSON** *(optional)* | Takes a pydantic model and returns the output as a JSON object. **Agent LLM needs to be using OpenAI client, could be Ollama for example but using the OpenAI wrapper** |
| **Output Pydantic** *(optional)* | Takes a pydantic model and returns the output as a pydantic object. **Agent LLM needs to be using OpenAI client, could be Ollama for example but using the OpenAI wrapper** |
| **Output File** *(optional)* | Takes a file path and saves the output of the task on it. |
| **Callback** *(optional)* | A function to be executed after the task is completed. |
## Creating a Task

View File

@@ -5,32 +5,32 @@ description: Guide on integrating CrewAI with various Large Language Models (LLM
## Connect CrewAI to LLMs
!!! note "Default LLM"
By default, crewAI uses OpenAI's GPT-4 model for language processing. However, you can configure your agents to use a different model or API. This guide will show you how to connect your agents to different LLMs.
By default, crewAI uses OpenAI's GPT-4 model for language processing. However, you can configure your agents to use a different model or API. This guide will show you how to connect your agents to different LLMs. You can change the specific gpt model by setting the `OPENAI_MODEL_NAME` environment variable.
CrewAI offers flexibility in connecting to various LLMs, including local models via [Ollama](https://ollama.ai) and different APIs like Azure. It's compatible with all [LangChain LLM](https://python.langchain.com/docs/integrations/llms/) components, enabling diverse integrations for tailored AI solutions.
## Ollama Integration
Ollama is preferred for local LLM integration, offering customization and privacy benefits. It requires installation and configuration, including model adjustments via a Modelfile to optimize performance.
### Setting Up Ollama
- **Installation**: Follow Ollama's guide for setup.
- **Configuration**: [Adjust your local model with a Modelfile](https://github.com/jmorganca/ollama/blob/main/docs/modelfile.md), considering adding `Observation` as a stop word and playing with parameters like `top_p` and `temperature`.
- **Configuration**: [Adjust your local model with a Modelfile](https://github.com/jmorganca/ollama/blob/main/docs/modelfile.md), considering adding `Result` as a stop word and playing with parameters like `top_p` and `temperature`.
### Integrating Ollama with CrewAI
Instantiate Ollama and pass it to your agents within CrewAI, enhancing them with the local model's capabilities.
```python
from langchain_community.llms import Ollama
# Assuming you have Ollama installed and downloaded the openhermes model
ollama_openhermes = Ollama(model="openhermes")
# Required
os.environ["OPENAI_API_BASE"]='http://localhost:11434/v1'
os.environ["OPENAI_MODEL_NAME"]='openhermes'
os.environ["OPENAI_API_KEY"]=''
local_expert = Agent(
role='Local Expert',
goal='Provide insights about the city',
backstory="A knowledgeable local guide.",
tools=[SearchTools.search_internet, BrowserTools.scrape_and_summarize_website],
llm=ollama_openhermes,
verbose=True
)
```
@@ -40,35 +40,40 @@ You can use environment variables for easy switch between APIs and models, suppo
### Configuration Examples
### Ollama
```sh
OPENAI_API_BASE='http://localhost:11434/v1'
OPENAI_MODEL_NAME='openhermes' # Depending on the model you have available
OPENAI_API_KEY=NA
```
### FastChat
```sh
# Required
OPENAI_API_BASE="http://localhost:8001/v1"
OPENAI_MODEL_NAME='oh-2.5m7b-q51' # Depending on the model you have available
OPENAI_API_KEY=NA
MODEL_NAME='oh-2.5m7b-q51' # Depending on the model you have available
```
### LM Studio
```sh
# Required
OPENAI_API_BASE="http://localhost:8000/v1"
OPENAI_MODEL_NAME=NA
OPENAI_API_KEY=NA
MODEL_NAME=NA
```
### Mistral API
```sh
OPENAI_API_KEY=your-mistral-api-key
OPENAI_API_BASE=https://api.mistral.ai/v1
MODEL_NAME="mistral-small" # Check documentation for available models
OPENAI_MODEL_NAME="mistral-small" # Check documentation for available models
```
### text-gen-web-ui
```sh
# Required
API_BASE_URL=http://localhost:5000
OPENAI_API_BASE=http://localhost:5000/v1
OPENAI_MODEL_NAME=NA
OPENAI_API_KEY=NA
MODEL_NAME=NA
```
### Azure Open AI

View File

@@ -6,12 +6,24 @@ There is NO data being collected on the prompts, tasks descriptions agents backs
Data collected includes:
- Version of crewAI
- So we can understand how many users are using the latest version
- Version of Python
- So we can decide on what versions to better support
- General OS (e.g. number of CPUs, macOS/Windows/Linux)
- So we know what OS we should focus on and if we could build specific OS related features
- Number of agents and tasks in a crew
- So we make sure we are testing internally with similar use cases and educate people on the best practices
- Crew Process being used
- Understand where we should focus our efforts
- If Agents are using memory or allowing delegation
- Understand if we improved the features or maybe even drop them
- If Tasks are being executed in parallel or sequentially
- Understand if we should focus more on parallel execution
- Language model being used
- Improved support on most used languages
- Roles of agents in a crew
- Tools names available
- Understand high level use cases so we can build better tools, integrations and examples about it
- Tools names available
- Understand out of the publically available tools, which ones are being used the most so we can improve them
Users can opt-in sharing the complete telemetry data by setting the `share_crew` attribute to `True` on their Crews.

2790
poetry.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
[tool.poetry]
name = "crewai"
version = "0.5.5"
version = "0.14.0"
description = "Cutting-edge framework for orchestrating role-playing, autonomous AI agents. By fostering collaborative intelligence, CrewAI empowers agents to work together seamlessly, tackling complex tasks."
authors = ["Joao Moura <joao@crewai.com>"]
readme = "README.md"
@@ -16,18 +16,21 @@ Documentation = "https://github.com/joaomdmoura/CrewAI/wiki/Index"
Repository = "https://github.com/joaomdmoura/crewai"
[tool.poetry.dependencies]
python = ">=3.10,<4.0"
python = ">=3.10,<=3.13"
pydantic = "^2.4.2"
langchain = "0.1.0"
langchain = "^0.1.0"
openai = "^1.7.1"
langchain-openai = "^0.0.2"
langchain-openai = "^0.0.5"
opentelemetry-api = "^1.22.0"
opentelemetry-sdk = "^1.22.0"
opentelemetry-exporter-otlp-proto-http = "^1.22.0"
instructor = "^0.5.2"
regex = "^2023.12.25"
crewai-tools = "^0.0.6"
[tool.poetry.group.dev.dependencies]
isort = "^5.13.2"
pyright = "1.1.333"
pyright = ">=1.1.350,<2.0.0"
black = {git = "https://github.com/psf/black.git", rev = "stable"}
autoflake = "^2.2.1"
pre-commit = "^3.6.0"
@@ -43,8 +46,10 @@ cairosvg = "^2.7.1"
profile = "black"
known_first_party = ["crewai"]
[tool.poetry.group.test.dependencies]
pytest = "^7.4"
pytest = "^8.0.0"
pytest-vcr = "^1.0.2"
python-dotenv = "1.0.0"

View File

@@ -1,11 +1,13 @@
import os
import uuid
from typing import Any, List, Optional
from typing import Any, List, Optional, Tuple
from crewai_tools import BaseTool as CrewAITool
from langchain.agents.agent import RunnableAgent
from langchain.agents.format_scratchpad import format_log_to_str
from langchain.agents.tools import tool as LangChainTool
from langchain.memory import ConversationSummaryMemory
from langchain.tools.render import render_text_description
from langchain_core.runnables.config import RunnableConfig
from langchain_core.agents import AgentAction
from langchain_openai import ChatOpenAI
from pydantic import (
UUID4,
@@ -19,12 +21,7 @@ from pydantic import (
)
from pydantic_core import PydanticCustomError
from crewai.agents import (
CacheHandler,
CrewAgentExecutor,
CrewAgentOutputParser,
ToolsHandler,
)
from crewai.agents import CacheHandler, CrewAgentExecutor, CrewAgentParser, ToolsHandler
from crewai.utilities import I18N, Logger, Prompts, RPMController
@@ -40,12 +37,14 @@ class Agent(BaseModel):
goal: The objective of the agent.
backstory: The backstory of the agent.
llm: The language model that will run the agent.
function_calling_llm: The language model that will the tool calling for this agent, it overrides the crew function_calling_llm.
max_iter: Maximum number of iterations for an agent to execute a task.
memory: Whether the agent should have memory or not.
max_rpm: Maximum number of requests per minute for the agent execution to be respected.
verbose: Whether the agent execution should be in verbose mode.
allow_delegation: Whether the agent is allowed to delegate tasks to other agents.
tools: Tools at agents disposal
step_callback: Callback to be executed after each step of the agent execution.
"""
__hash__ = object.__hash__ # type: ignore
@@ -75,7 +74,7 @@ class Agent(BaseModel):
allow_delegation: bool = Field(
default=True, description="Allow delegation of tasks to agents"
)
tools: List[Any] = Field(
tools: Optional[List[Any]] = Field(
default_factory=list, description="Tools at agents disposal"
)
max_iter: Optional[int] = Field(
@@ -90,13 +89,20 @@ class Agent(BaseModel):
cache_handler: InstanceOf[CacheHandler] = Field(
default=CacheHandler(), description="An instance of the CacheHandler class."
)
step_callback: Optional[Any] = Field(
default=None,
description="Callback to be executed after each step of the agent execution.",
)
i18n: I18N = Field(default=I18N(), description="Internationalization settings.")
llm: Any = Field(
default_factory=lambda: ChatOpenAI(
model="gpt-4",
model=os.environ.get("OPENAI_MODEL_NAME", "gpt-4")
),
description="Language model that will run the agent.",
)
function_calling_llm: Optional[Any] = Field(
description="Language model that will run the agent.", default=None
)
@field_validator("id", mode="before")
@classmethod
@@ -125,7 +131,7 @@ class Agent(BaseModel):
def execute_task(
self,
task: str,
task: Any,
context: Optional[str] = None,
tools: Optional[List[Any]] = None,
) -> str:
@@ -139,22 +145,25 @@ class Agent(BaseModel):
Returns:
Output of the agent
"""
task_prompt = task.prompt()
if context:
task = self.i18n.slice("task_with_context").format(
task=task, context=context
task_prompt = self.i18n.slice("task_with_context").format(
task=task_prompt, context=context
)
tools = tools or self.tools
tools = self._parse_tools(tools or self.tools)
self.agent_executor.tools = tools
self.agent_executor.task = task
self.agent_executor.tools_description = render_text_description(tools)
self.agent_executor.tools_names = self.__tools_names(tools)
result = self.agent_executor.invoke(
{
"input": task,
"tool_names": self.__tools_names(tools),
"tools": render_text_description(tools),
},
RunnableConfig(callbacks=[self.tools_handler]),
"input": task_prompt,
"tool_names": self.agent_executor.tools_names,
"tools": self.agent_executor.tools_description,
}
)["output"]
if self.max_rpm:
@@ -170,7 +179,7 @@ class Agent(BaseModel):
"""
self.cache_handler = cache_handler
self.tools_handler = ToolsHandler(cache=self.cache_handler)
self._create_agent_executor()
self.create_agent_executor()
def set_rpm_controller(self, rpm_controller: RPMController) -> None:
"""Set the rpm controller for the agent.
@@ -180,9 +189,9 @@ class Agent(BaseModel):
"""
if not self._rpm_controller:
self._rpm_controller = rpm_controller
self._create_agent_executor()
self.create_agent_executor()
def _create_agent_executor(self) -> None:
def create_agent_executor(self) -> None:
"""Create an agent executor for the agent.
Returns:
@@ -192,20 +201,27 @@ class Agent(BaseModel):
"input": lambda x: x["input"],
"tools": lambda x: x["tools"],
"tool_names": lambda x: x["tool_names"],
"agent_scratchpad": lambda x: format_log_to_str(x["intermediate_steps"]),
"agent_scratchpad": lambda x: self.format_log_to_str(
x["intermediate_steps"]
),
}
executor_args = {
"llm": self.llm,
"i18n": self.i18n,
"tools": self.tools,
"tools": self._parse_tools(self.tools),
"verbose": self.verbose,
"handle_parsing_errors": True,
"max_iterations": self.max_iter,
"step_callback": self.step_callback,
"tools_handler": self.tools_handler,
"function_calling_llm": self.function_calling_llm,
}
if self._rpm_controller:
executor_args["request_within_rpm_limit"] = (
self._rpm_controller.check_or_wait
)
executor_args[
"request_within_rpm_limit"
] = self._rpm_controller.check_or_wait
if self.memory:
summary_memory = ConversationSummaryMemory(
@@ -213,9 +229,11 @@ class Agent(BaseModel):
)
executor_args["memory"] = summary_memory
agent_args["chat_history"] = lambda x: x["chat_history"]
prompt = Prompts(i18n=self.i18n).task_execution_with_memory()
prompt = Prompts(
i18n=self.i18n, tools=self.tools
).task_execution_with_memory()
else:
prompt = Prompts(i18n=self.i18n).task_execution()
prompt = Prompts(i18n=self.i18n, tools=self.tools).task_execution()
execution_prompt = prompt.partial(
goal=self.goal,
@@ -224,20 +242,34 @@ class Agent(BaseModel):
)
bind = self.llm.bind(stop=[self.i18n.slice("observation")])
inner_agent = (
agent_args
| execution_prompt
| bind
| CrewAgentOutputParser(
tools_handler=self.tools_handler,
cache=self.cache_handler,
i18n=self.i18n,
)
)
inner_agent = agent_args | execution_prompt | bind | CrewAgentParser()
self.agent_executor = CrewAgentExecutor(
agent=RunnableAgent(runnable=inner_agent), **executor_args
)
def _parse_tools(self, tools: List[Any]) -> List[LangChainTool]:
"""Parse tools to be used for the task."""
tools_list = []
for tool in tools:
if isinstance(tool, CrewAITool):
tools_list.append(tool.to_langchain())
else:
tools_list.append(tool)
return tools_list
def format_log_to_str(
self,
intermediate_steps: List[Tuple[AgentAction, str]],
observation_prefix: str = "Result: ",
llm_prefix: str = "",
) -> str:
"""Construct the scratchpad that lets the agent continue its thought process."""
thoughts = ""
for action, observation in intermediate_steps:
thoughts += action.log
thoughts += f"\n{observation_prefix}{observation}\n{llm_prefix}"
return thoughts
@staticmethod
def __tools_names(tools) -> str:
return ", ".join([t.name for t in tools])

View File

@@ -1,4 +1,4 @@
from .cache.cache_handler import CacheHandler
from .executor import CrewAgentExecutor
from .output_parser import CrewAgentOutputParser
from .parser import CrewAgentParser
from .tools_handler import ToolsHandler

View File

@@ -1,2 +1 @@
from .cache_handler import CacheHandler
from .cache_hit import CacheHit

View File

@@ -10,9 +10,7 @@ class CacheHandler:
self._cache = {}
def add(self, tool, input, output):
input = input.strip()
self._cache[f"{tool}-{input}"] = output
def read(self, tool, input) -> Optional[str]:
input = input.strip()
return self._cache.get(f"{tool}-{input}")

View File

@@ -1,18 +0,0 @@
from typing import Any
from pydantic import BaseModel, Field
from .cache_handler import CacheHandler
class CacheHit(BaseModel):
"""Cache Hit Object."""
class Config:
arbitrary_types_allowed = True
# Making it Any instead of AgentAction to avoind
# pydantic v1 vs v2 incompatibility, langchain should
# soon be updated to pydantic v2
action: Any = Field(description="Action taken")
cache: CacheHandler = Field(description="Cache Handler for the tool")

View File

@@ -1,30 +0,0 @@
from langchain_core.exceptions import OutputParserException
from crewai.utilities import I18N
class TaskRepeatedUsageException(OutputParserException):
"""Exception raised when a task is used twice in a roll."""
i18n: I18N = I18N()
error: str = "TaskRepeatedUsageException"
message: str
def __init__(self, i18n: I18N, tool: str, tool_input: str, text: str):
self.i18n = i18n
self.text = text
self.tool = tool
self.tool_input = tool_input
self.message = self.i18n.errors("task_repeated_usage").format(
tool=tool, tool_input=tool_input
)
super().__init__(
error=self.error,
observation=self.message,
send_to_llm=True,
llm_output=self.text,
)
def __str__(self):
return self.message

View File

@@ -3,25 +3,32 @@ from typing import Any, Dict, Iterator, List, Optional, Tuple, Union
from langchain.agents import AgentExecutor
from langchain.agents.agent import ExceptionTool
from langchain.agents.tools import InvalidTool
from langchain.callbacks.manager import CallbackManagerForChainRun
from langchain_core.agents import AgentAction, AgentFinish, AgentStep
from langchain_core.exceptions import OutputParserException
from langchain_core.pydantic_v1 import root_validator
from langchain_core.tools import BaseTool
from langchain_core.utils.input import get_color_mapping
from pydantic import InstanceOf
from crewai.agents.cache.cache_hit import CacheHit
from crewai.tools.cache_tools import CacheTools
from crewai.agents.tools_handler import ToolsHandler
from crewai.tools.tool_usage import ToolUsage, ToolUsageErrorException
from crewai.utilities import I18N
class CrewAgentExecutor(AgentExecutor):
i18n: I18N = I18N()
_i18n: I18N = I18N()
llm: Any = None
iterations: int = 0
task: Any = None
tools_description: str = ""
tools_names: str = ""
function_calling_llm: Any = None
request_within_rpm_limit: Any = None
tools_handler: InstanceOf[ToolsHandler] = None
max_iterations: Optional[int] = 15
force_answer_max_iterations: Optional[int] = None
step_callback: Optional[Any] = None
@root_validator()
def set_force_answer_max_iterations(cls, values: Dict) -> Dict:
@@ -31,11 +38,6 @@ class CrewAgentExecutor(AgentExecutor):
def _should_force_answer(self) -> bool:
return True if self.iterations == self.force_answer_max_iterations else False
def _force_answer(self, output: AgentAction):
return AgentStep(
action=output, observation=self.i18n.errors("force_final_answer")
)
def _call(
self,
inputs: Dict[str, str],
@@ -63,6 +65,10 @@ class CrewAgentExecutor(AgentExecutor):
intermediate_steps,
run_manager=run_manager,
)
if self.step_callback:
self.step_callback(next_step_output)
if isinstance(next_step_output, AgentFinish):
return self._return(
next_step_output, intermediate_steps, run_manager=run_manager
@@ -98,23 +104,28 @@ class CrewAgentExecutor(AgentExecutor):
"""
try:
intermediate_steps = self._prepare_intermediate_steps(intermediate_steps)
# Call the LLM to see what to do.
output = self.agent.plan(
intermediate_steps,
callbacks=run_manager.get_child() if run_manager else None,
**inputs,
)
if self._should_force_answer():
if isinstance(output, AgentAction) or isinstance(output, AgentFinish):
if isinstance(output, AgentFinish):
yield output
return
if isinstance(output, AgentAction):
output = output
elif isinstance(output, CacheHit):
output = output.action
else:
raise ValueError(
f"Unexpected output type from agent: {type(output)}"
)
yield self._force_answer(output)
yield AgentStep(
action=output, observation=self._i18n.errors("force_final_answer")
)
return
except OutputParserException as e:
@@ -132,14 +143,14 @@ class CrewAgentExecutor(AgentExecutor):
text = str(e)
if isinstance(self.handle_parsing_errors, bool):
if e.send_to_llm:
observation = str(e.observation)
observation = f"\n{str(e.observation)}"
text = str(e.llm_output)
else:
observation = "Invalid or incomplete response"
observation = ""
elif isinstance(self.handle_parsing_errors, str):
observation = self.handle_parsing_errors
observation = f"\n{self.handle_parsing_errors}"
elif callable(self.handle_parsing_errors):
observation = self.handle_parsing_errors(e)
observation = f"\n{self.handle_parsing_errors(e)}"
else:
raise ValueError("Got unexpected type of `handle_parsing_errors`")
output = AgentAction("_Exception", observation, text)
@@ -155,7 +166,9 @@ class CrewAgentExecutor(AgentExecutor):
)
if self._should_force_answer():
yield self._force_answer(output)
yield AgentStep(
action=output, observation=self._i18n.errors("force_final_answer")
)
return
yield AgentStep(action=output, observation=observation)
@@ -166,17 +179,6 @@ class CrewAgentExecutor(AgentExecutor):
yield output
return
# Override tool usage to use CacheTools
if isinstance(output, CacheHit):
cache = output.cache
action = output.action
tool = CacheTools(cache_handler=cache).tool()
output = action.copy()
output.tool_input = f"tool:{action.tool}|input:{action.tool_input}"
output.tool = tool.name
name_to_tool_map[tool.name] = tool
color_mapping[tool.name] = color_mapping[action.tool]
actions: List[AgentAction]
actions = [output] if isinstance(output, AgentAction) else output
yield from actions
@@ -184,31 +186,27 @@ class CrewAgentExecutor(AgentExecutor):
if run_manager:
run_manager.on_agent_action(agent_action, color="green")
# Otherwise we lookup the tool
if agent_action.tool in name_to_tool_map:
tool = name_to_tool_map[agent_action.tool]
return_direct = tool.return_direct
color = color_mapping[agent_action.tool]
tool_run_kwargs = self.agent.tool_run_logging_kwargs()
if return_direct:
tool_run_kwargs["llm_prefix"] = ""
# We then call the tool on the tool input to get an observation
observation = tool.run(
agent_action.tool_input,
verbose=self.verbose,
color=color,
callbacks=run_manager.get_child() if run_manager else None,
**tool_run_kwargs,
)
tool_usage = ToolUsage(
tools_handler=self.tools_handler,
tools=self.tools,
tools_description=self.tools_description,
tools_names=self.tools_names,
function_calling_llm=self.function_calling_llm,
llm=self.llm,
task=self.task,
)
tool_calling = tool_usage.parse(agent_action.log)
if isinstance(tool_calling, ToolUsageErrorException):
observation = tool_calling.message
else:
tool_run_kwargs = self.agent.tool_run_logging_kwargs()
observation = InvalidTool().run(
{
"requested_tool_name": agent_action.tool,
"available_tool_names": list(name_to_tool_map.keys()),
},
verbose=self.verbose,
color=None,
callbacks=run_manager.get_child() if run_manager else None,
**tool_run_kwargs,
)
if tool_calling.tool_name.lower().strip() in [
name.lower().strip() for name in name_to_tool_map
]:
observation = tool_usage.use(tool_calling, agent_action.log)
else:
observation = self._i18n.errors("wrong_tool_name").format(
tool=tool_calling.tool_name,
tools=", ".join([tool.name for tool in self.tools]),
)
yield AgentStep(action=agent_action, observation=observation)

View File

@@ -1,79 +0,0 @@
import re
from typing import Union
from langchain.agents.output_parsers import ReActSingleInputOutputParser
from langchain_core.agents import AgentAction, AgentFinish
from crewai.agents.cache import CacheHandler, CacheHit
from crewai.agents.exceptions import TaskRepeatedUsageException
from crewai.agents.tools_handler import ToolsHandler
from crewai.utilities import I18N
FINAL_ANSWER_ACTION = "Final Answer:"
FINAL_ANSWER_AND_PARSABLE_ACTION_ERROR_MESSAGE = (
"Parsing LLM output produced both a final answer and a parse-able action:"
)
class CrewAgentOutputParser(ReActSingleInputOutputParser):
"""Parses ReAct-style LLM calls that have a single tool input.
Expects output to be in one of two formats.
If the output signals that an action should be taken,
should be in the below format. This will result in an AgentAction
being returned.
```
Thought: agent thought here
Action: search
Action Input: what is the temperature in SF?
```
If the output signals that a final answer should be given,
should be in the below format. This will result in an AgentFinish
being returned.
```
Thought: agent thought here
Final Answer: The temperature is 100 degrees
```
It also prevents tools from being reused in a roll.
"""
class Config:
arbitrary_types_allowed = True
tools_handler: ToolsHandler
cache: CacheHandler
i18n: I18N
def parse(self, text: str) -> Union[AgentAction, AgentFinish, CacheHit]:
regex = (
r"Action\s*\d*\s*:[\s]*(.*?)[\s]*Action\s*\d*\s*Input\s*\d*\s*:[\s]*(.*)"
)
if action_match := re.search(regex, text, re.DOTALL):
action = action_match.group(1).strip()
action_input = action_match.group(2)
tool_input = action_input.strip(" ")
tool_input = tool_input.strip('"')
if last_tool_usage := self.tools_handler.last_used_tool:
usage = {
"tool": action,
"input": tool_input,
}
if usage == last_tool_usage:
raise TaskRepeatedUsageException(
text=text,
tool=action,
tool_input=tool_input,
i18n=self.i18n,
)
if self.cache.read(action, tool_input):
action = AgentAction(action, tool_input, text)
return CacheHit(action=action, cache=self.cache)
return super().parse(text)

View File

@@ -0,0 +1,60 @@
from typing import Union
from langchain.agents.output_parsers import ReActSingleInputOutputParser
from langchain_core.agents import AgentAction, AgentFinish
from langchain_core.exceptions import OutputParserException
from crewai.utilities import I18N
TOOL_USAGE_SECTION = "Use Tool:"
FINAL_ANSWER_ACTION = "Final Answer:"
FINAL_ANSWER_AND_TOOL_ERROR_MESSAGE = "I tried to use a tool and give a final answer at the same time, I must choose only one."
class CrewAgentParser(ReActSingleInputOutputParser):
"""Parses Crew-style LLM calls that have a single tool input.
Expects output to be in one of two formats.
If the output signals that an action should be taken,
should be in the below format. This will result in an AgentAction
being returned.
```
Use Tool: All context for using the tool here
```
If the output signals that a final answer should be given,
should be in the below format. This will result in an AgentFinish
being returned.
```
Final Answer: The temperature is 100 degrees
```
"""
_i18n: I18N = I18N()
def parse(self, text: str) -> Union[AgentAction, AgentFinish]:
includes_answer = FINAL_ANSWER_ACTION in text
includes_tool = TOOL_USAGE_SECTION in text
if includes_tool:
if includes_answer:
raise OutputParserException(f"{FINAL_ANSWER_AND_TOOL_ERROR_MESSAGE}")
return AgentAction("", "", text)
elif includes_answer:
return AgentFinish(
{"output": text.split(FINAL_ANSWER_ACTION)[-1].strip()}, text
)
format = self._i18n.slice("format_without_tools")
error = f"{format}"
raise OutputParserException(
error,
observation=error,
llm_output=text,
send_to_llm=True,
)

View File

@@ -1,44 +1,27 @@
from typing import Any, Dict
from langchain.callbacks.base import BaseCallbackHandler
from typing import Any
from ..tools.cache_tools import CacheTools
from ..tools.tool_calling import ToolCalling
from .cache.cache_handler import CacheHandler
class ToolsHandler(BaseCallbackHandler):
class ToolsHandler:
"""Callback handler for tool usage."""
last_used_tool: Dict[str, Any] = {}
last_used_tool: ToolCalling = {}
cache: CacheHandler
def __init__(self, cache: CacheHandler, **kwargs: Any):
def __init__(self, cache: CacheHandler):
"""Initialize the callback handler."""
self.cache = cache
super().__init__(**kwargs)
self.last_used_tool = {}
def on_tool_start(
self, serialized: Dict[str, Any], input_str: str, **kwargs: Any
) -> Any:
"""Run when tool starts running."""
name = serialized.get("name")
if name not in ["invalid_tool", "_Exception"]:
tools_usage = {
"tool": name,
"input": input_str,
}
self.last_used_tool = tools_usage
def on_tool_end(self, output: str, **kwargs: Any) -> Any:
def on_tool_use(self, calling: ToolCalling, output: str) -> Any:
"""Run when tool ends running."""
if (
"is not a valid tool" not in output
and "Invalid or incomplete response" not in output
and "Invalid Format" not in output
):
if self.last_used_tool["tool"] != CacheTools().name:
self.cache.add(
tool=self.last_used_tool["tool"],
input=self.last_used_tool["input"],
output=output,
)
self.last_used_tool = calling
if calling.tool_name != CacheTools().name:
self.cache.add(
tool=calling.tool_name,
input=calling.arguments,
output=output,
)

View File

@@ -32,15 +32,19 @@ class Crew(BaseModel):
tasks: List of tasks assigned to the crew.
agents: List of agents part of this crew.
manager_llm: The language model that will run manager agent.
function_calling_llm: The language model that will run the tool calling for all the agents.
process: The process flow that the crew will follow (e.g., sequential).
verbose: Indicates the verbosity level for logging during execution.
config: Configuration settings for the crew.
_cache_handler: Handles caching for the crew's operations.
max_rpm: Maximum number of requests per minute for the crew execution to be respected.
id: A unique identifier for the crew instance.
full_output: Whether the crew should return the full output with all tasks outputs or just the final output.
step_callback: Callback to be executed after each step for every agents execution.
share_crew: Whether you want to share the complete crew infromation and execution with crewAI to make the library better, and allow us to train models.
"""
__hash__ = object.__hash__ # type: ignore
_execution_span: Any = PrivateAttr()
_rpm_controller: RPMController = PrivateAttr()
_logger: Logger = PrivateAttr()
_cache_handler: InstanceOf[CacheHandler] = PrivateAttr(default=CacheHandler())
@@ -49,11 +53,23 @@ class Crew(BaseModel):
agents: List[Agent] = Field(default_factory=list)
process: Process = Field(default=Process.sequential)
verbose: Union[int, bool] = Field(default=0)
full_output: Optional[bool] = Field(
default=False,
description="Whether the crew should return the full output with all tasks outputs or just the final output.",
)
manager_llm: Optional[Any] = Field(
description="Language model that will run the agent.", default=None
)
function_calling_llm: Optional[Any] = Field(
description="Language model that will run the agent.", default=None
)
config: Optional[Union[Json, Dict[str, Any]]] = Field(default=None)
id: UUID4 = Field(default_factory=uuid.uuid4, frozen=True)
share_crew: Optional[bool] = Field(default=False)
step_callback: Optional[Any] = Field(
default=None,
description="Callback to be executed after each step for all agents execution.",
)
max_rpm: Optional[int] = Field(
default=None,
description="Maximum number of requests per minute for the crew execution to be respected.",
@@ -94,6 +110,7 @@ class Crew(BaseModel):
self._logger = Logger(self.verbose)
self._rpm_controller = RPMController(max_rpm=self.max_rpm, logger=self._logger)
self._telemetry = Telemetry()
self._telemetry.set_tracer()
self._telemetry.crew_creation(self)
return self
@@ -137,6 +154,7 @@ class Crew(BaseModel):
"missing_keys_in_config", "Config should have 'agents' and 'tasks'.", {}
)
self.process = self.config.get("process", self.process)
self.agents = [Agent(**agent) for agent in self.config["agents"]]
self.tasks = [self._create_task(task) for task in self.config["tasks"]]
@@ -157,9 +175,18 @@ class Crew(BaseModel):
def kickoff(self) -> str:
"""Starts the crew to work on its assigned tasks."""
self._execution_span = self._telemetry.crew_execution_span(self)
for agent in self.agents:
agent.i18n = I18N(language=self.language)
if not agent.function_calling_llm:
agent.function_calling_llm = self.function_calling_llm
agent.create_agent_executor()
if not agent.step_callback:
agent.step_callback = self.step_callback
agent.create_agent_executor()
if self.process == Process.sequential:
return self._run_sequential_process()
if self.process == Process.hierarchical:
@@ -190,10 +217,8 @@ class Crew(BaseModel):
role = task.agent.role if task.agent is not None else "None"
self._logger.log("debug", f"[{role}] Task output: {task_output}\n\n")
if self.max_rpm:
self._rpm_controller.stop_rpm_counter()
return task_output
self._finish_execution(task_output)
return self._format_output(task_output)
def _run_hierarchical_process(self) -> str:
"""Creates and assigns a manager agent to make sure the crew completes the tasks."""
@@ -221,7 +246,20 @@ class Crew(BaseModel):
"debug", f"[{manager.role}] Task output: {task_output}\n\n"
)
self._finish_execution(task_output)
return self._format_output(task_output)
def _format_output(self, output: str) -> str:
"""Formats the output of the crew execution."""
if self.full_output:
return {
"final_output": output,
"tasks_outputs": [task.output for task in self.tasks],
}
else:
return output
def _finish_execution(self, output) -> None:
if self.max_rpm:
self._rpm_controller.stop_rpm_counter()
return task_output
self._telemetry.end_crew(self, output)

View File

@@ -1,13 +1,15 @@
import threading
import uuid
from typing import Any, List, Optional
from typing import Any, List, Optional, Type
from langchain_openai import ChatOpenAI
from pydantic import UUID4, BaseModel, Field, field_validator, model_validator
from pydantic_core import PydanticCustomError
from crewai.agent import Agent
from crewai.tasks.task_output import TaskOutput
from crewai.utilities import I18N
from crewai.utilities import I18N, Converter, ConverterError, Printer
from crewai.utilities.pydantic_schema_parser import PydanticSchemaParser
class Task(BaseModel):
@@ -17,6 +19,7 @@ class Task(BaseModel):
arbitrary_types_allowed = True
__hash__ = object.__hash__ # type: ignore
used_tools: int = 0
i18n: I18N = I18N()
thread: threading.Thread = None
description: str = Field(description="Description of the actual task.")
@@ -38,10 +41,22 @@ class Task(BaseModel):
description="Whether the task should be executed asynchronously or not.",
default=False,
)
output_json: Optional[Type[BaseModel]] = Field(
description="A Pydantic model to be used to create a JSON output.",
default=None,
)
output_pydantic: Optional[Type[BaseModel]] = Field(
description="A Pydantic model to be used to create a Pydantic output.",
default=None,
)
output_file: Optional[str] = Field(
description="A file path to be used to create a file output.",
default=None,
)
output: Optional[TaskOutput] = Field(
description="Task output, it's final result after being executed", default=None
)
tools: List[Any] = Field(
tools: Optional[List[Any]] = Field(
default_factory=list,
description="Tools the agent is limited to use for this task.",
)
@@ -66,6 +81,18 @@ class Task(BaseModel):
self.tools.extend(self.agent.tools)
return self
@model_validator(mode="after")
def check_output(self):
"""Check if an output type is set."""
output_types = [self.output_json, self.output_pydantic]
if len([type for type in output_types if type]) > 1:
raise PydanticCustomError(
"output_type",
"Only one output type can be set, either output_pydantic or output_json.",
{},
)
return self
def execute(
self,
agent: Agent | None = None,
@@ -89,32 +116,46 @@ class Task(BaseModel):
for task in self.context:
if task.async_execution:
task.thread.join()
context.append(task.output.result)
context.append(task.output.raw_output)
context = "\n".join(context)
tools = tools or self.tools
if self.async_execution:
self.thread = threading.Thread(
target=self._execute, args=(agent, self._prompt(), context, tools)
target=self._execute, args=(agent, self, context, tools)
)
self.thread.start()
else:
result = self._execute(
task=self,
agent=agent,
task_prompt=self._prompt(),
context=context,
tools=tools,
)
return result
def _execute(self, agent, task_prompt, context, tools):
result = agent.execute_task(task=task_prompt, context=context, tools=tools)
self.output = TaskOutput(description=self.description, result=result)
self.callback(self.output) if self.callback else None
return result
def _execute(self, agent, task, context, tools):
result = agent.execute_task(
task=task,
context=context,
tools=tools,
)
def _prompt(self) -> str:
exported_output = self._export_output(result)
self.output = TaskOutput(
description=self.description,
exported_output=exported_output,
raw_output=result,
)
if self.callback:
self.callback(self.output)
return exported_output
def prompt(self) -> str:
"""Prompt the task.
Returns:
@@ -128,3 +169,47 @@ class Task(BaseModel):
)
tasks_slices = [self.description, output]
return "\n".join(tasks_slices)
def _export_output(self, result: str) -> Any:
exported_result = result
instructions = "I'm gonna convert this raw text into valid JSON."
if self.output_pydantic or self.output_json:
model = self.output_pydantic or self.output_json
llm = self.agent.function_calling_llm or self.agent.llm
if not self._is_gpt(llm):
model_schema = PydanticSchemaParser(model=model).get_schema()
instructions = f"{instructions}\n\nThe json should have the following structure, with the following keys:\n{model_schema}"
converter = Converter(
llm=llm, text=result, model=model, instructions=instructions
)
if self.output_pydantic:
exported_result = converter.to_pydantic()
elif self.output_json:
exported_result = converter.to_json()
if isinstance(exported_result, ConverterError):
Printer().print(
content=f"{exported_result.message} Using raw output instead.",
color="red",
)
exported_result = result
if self.output_file:
content = (
exported_result if not self.output_pydantic else exported_result.json()
)
self._save_file(content)
return exported_result
def _is_gpt(self, llm) -> bool:
return isinstance(llm, ChatOpenAI) and llm.openai_api_base == None
def _save_file(self, result: Any) -> None:
with open(self.output_file, "w") as file:
file.write(result)
return None

View File

@@ -1,4 +1,4 @@
from typing import Optional
from typing import Optional, Union
from pydantic import BaseModel, Field, model_validator
@@ -8,7 +8,10 @@ class TaskOutput(BaseModel):
description: str = Field(description="Description of the task")
summary: Optional[str] = Field(description="Summary of the task", default=None)
result: str = Field(description="Result of the task")
exported_output: Union[str, BaseModel] = Field(
description="Output of the task", default=None
)
raw_output: str = Field(description="Result of the task")
@model_validator(mode="after")
def set_summary(self):

View File

@@ -1,7 +1,7 @@
import json
import os
import platform
import socket
from typing import Any
import pkg_resources
from opentelemetry import trace
@@ -32,75 +32,223 @@ class Telemetry:
- Language model being used
- Roles of agents in a crew
- Tools names available
Users can opt-in to sharing more complete data suing the `share_crew`
attribute in the Crew class.
"""
def __init__(self):
telemetry_endpoint = "http://telemetry.crewai.com:4318"
self.resource = Resource(attributes={SERVICE_NAME: "crewAI-telemetry"})
provider = TracerProvider(resource=self.resource)
processor = BatchSpanProcessor(
OTLPSpanExporter(endpoint=f"{telemetry_endpoint}/v1/traces")
)
provider.add_span_processor(processor)
trace.set_tracer_provider(provider)
def crew_creation(self, crew):
"""Records the creation of a crew."""
self.ready = False
try:
tracer = trace.get_tracer("crewai.telemetry")
span = tracer.start_span("Crew Created")
self.add_attribute(
span, "crewai_version", pkg_resources.get_distribution("crewai").version
telemetry_endpoint = "http://telemetry.crewai.com:4318"
self.resource = Resource(
attributes={SERVICE_NAME: "crewAI-telemetry"},
)
self.add_attribute(span, "python_version", platform.python_version())
self.add_attribute(span, "hostname", socket.gethostname())
self.add_attribute(span, "crewid", str(crew.id))
self.add_attribute(span, "crew_process", crew.process)
self.add_attribute(span, "crew_language", crew.language)
self.add_attribute(span, "crew_number_of_tasks", len(crew.tasks))
self.add_attribute(span, "crew_number_of_agents", len(crew.agents))
self.add_attribute(
span,
"crew_agents",
json.dumps(
[
{
"id": str(agent.id),
"role": agent.role,
"memory_enabled?": agent.memory,
"llm": json.dumps(self._safe_llm_attributes(agent.llm)),
"delegation_enabled?": agent.allow_delegation,
"tools_names": [tool.name for tool in agent.tools],
}
for agent in crew.agents
]
),
self.provider = TracerProvider(resource=self.resource)
processor = BatchSpanProcessor(
OTLPSpanExporter(endpoint=f"{telemetry_endpoint}/v1/traces", timeout=60)
)
self.add_attribute(
span,
"crew_tasks",
json.dumps(
[
{
"id": str(task.id),
"async_execution?": task.async_execution,
"tools_names": [tool.name for tool in task.tools],
}
for task in crew.tasks
]
),
)
self.add_attribute(span, "platform", platform.platform())
self.add_attribute(span, "platform_release", platform.release())
self.add_attribute(span, "platform_system", platform.system())
self.add_attribute(span, "platform_version", platform.version())
self.add_attribute(span, "cpus", os.cpu_count())
span.set_status(Status(StatusCode.OK))
span.end()
self.provider.add_span_processor(processor)
self.ready = True
except Exception:
pass
def add_attribute(self, span, key, value):
def set_tracer(self):
if self.ready:
try:
trace.set_tracer_provider(self.provider)
except Exception:
self.ready = False
def crew_creation(self, crew):
"""Records the creation of a crew."""
if self.ready:
try:
tracer = trace.get_tracer("crewai.telemetry")
span = tracer.start_span("Crew Created")
self._add_attribute(
span,
"crewai_version",
pkg_resources.get_distribution("crewai").version,
)
self._add_attribute(span, "python_version", platform.python_version())
self._add_attribute(span, "crew_id", str(crew.id))
self._add_attribute(span, "crew_process", crew.process)
self._add_attribute(span, "crew_language", crew.language)
self._add_attribute(span, "crew_number_of_tasks", len(crew.tasks))
self._add_attribute(span, "crew_number_of_agents", len(crew.agents))
self._add_attribute(
span,
"crew_agents",
json.dumps(
[
{
"id": str(agent.id),
"role": agent.role,
"memory_enabled?": agent.memory,
"verbose?": agent.verbose,
"max_iter": agent.max_iter,
"max_rpm": agent.max_rpm,
"i18n": agent.i18n.language,
"llm": json.dumps(self._safe_llm_attributes(agent.llm)),
"delegation_enabled?": agent.allow_delegation,
"tools_names": [tool.name for tool in agent.tools],
}
for agent in crew.agents
]
),
)
self._add_attribute(
span,
"crew_tasks",
json.dumps(
[
{
"id": str(task.id),
"async_execution?": task.async_execution,
"agent_role": task.agent.role if task.agent else "None",
"tools_names": [tool.name for tool in task.tools],
}
for task in crew.tasks
]
),
)
self._add_attribute(span, "platform", platform.platform())
self._add_attribute(span, "platform_release", platform.release())
self._add_attribute(span, "platform_system", platform.system())
self._add_attribute(span, "platform_version", platform.version())
self._add_attribute(span, "cpus", os.cpu_count())
span.set_status(Status(StatusCode.OK))
span.end()
except Exception:
pass
def tool_repeated_usage(self, llm: Any, tool_name: str, attempts: int):
"""Records the repeated usage 'error' of a tool by an agent."""
if self.ready:
try:
tracer = trace.get_tracer("crewai.telemetry")
span = tracer.start_span("Tool Repeated Usage")
self._add_attribute(span, "tool_name", tool_name)
self._add_attribute(span, "attempts", attempts)
self._add_attribute(
span, "llm", json.dumps(self._safe_llm_attributes(llm))
)
span.set_status(Status(StatusCode.OK))
span.end()
except Exception:
pass
def tool_usage(self, llm: Any, tool_name: str, attempts: int):
"""Records the usage of a tool by an agent."""
if self.ready:
try:
tracer = trace.get_tracer("crewai.telemetry")
span = tracer.start_span("Tool Usage")
self._add_attribute(span, "tool_name", tool_name)
self._add_attribute(span, "attempts", attempts)
self._add_attribute(
span, "llm", json.dumps(self._safe_llm_attributes(llm))
)
span.set_status(Status(StatusCode.OK))
span.end()
except Exception:
pass
def tool_usage_error(self, llm: Any):
"""Records the usage of a tool by an agent."""
if self.ready:
try:
tracer = trace.get_tracer("crewai.telemetry")
span = tracer.start_span("Tool Usage Error")
self._add_attribute(
span, "llm", json.dumps(self._safe_llm_attributes(llm))
)
span.set_status(Status(StatusCode.OK))
span.end()
except Exception:
pass
def crew_execution_span(self, crew):
"""Records the complete execution of a crew.
This is only collected if the user has opted-in to share the crew.
"""
if (self.ready) and (crew.share_crew):
try:
tracer = trace.get_tracer("crewai.telemetry")
span = tracer.start_span("Crew Execution")
self._add_attribute(span, "crew_id", str(crew.id))
self._add_attribute(
span,
"crew_agents",
json.dumps(
[
{
"id": str(agent.id),
"role": agent.role,
"goal": agent.goal,
"backstory": agent.backstory,
"memory_enabled?": agent.memory,
"verbose?": agent.verbose,
"max_iter": agent.max_iter,
"max_rpm": agent.max_rpm,
"i18n": agent.i18n.language,
"llm": json.dumps(self._safe_llm_attributes(agent.llm)),
"delegation_enabled?": agent.allow_delegation,
"tools_names": [tool.name for tool in agent.tools],
}
for agent in crew.agents
]
),
)
self._add_attribute(
span,
"crew_tasks",
json.dumps(
[
{
"id": str(task.id),
"description": task.description,
"async_execution?": task.async_execution,
"output": task.expected_output,
"agent_role": task.agent.role if task.agent else "None",
"context": [task.description for task in task.context]
if task.context
else "None",
"tools_names": [tool.name for tool in task.tools],
}
for task in crew.tasks
]
),
)
return span
except Exception:
pass
def end_crew(self, crew, output):
if (self.ready) and (crew.share_crew):
try:
self._add_attribute(crew._execution_span, "crew_output", output)
self._add_attribute(
crew._execution_span,
"crew_tasks_output",
json.dumps(
[
{
"id": str(task.id),
"description": task.description,
"output": task.output.result,
}
for task in crew.tasks
]
),
)
crew._execution_span.set_status(Status(StatusCode.OK))
crew._execution_span.end()
except Exception:
pass
def _add_attribute(self, span, key, value):
"""Add an attribute to a span."""
try:
return span.set_attribute(key, value)

View File

@@ -1,9 +1,10 @@
from typing import List
from langchain.tools import Tool
from langchain.tools import StructuredTool
from pydantic import BaseModel, Field
from crewai.agent import Agent
from crewai.task import Task
from crewai.utilities import I18N
@@ -15,50 +16,48 @@ class AgentTools(BaseModel):
def tools(self):
return [
Tool.from_function(
StructuredTool.from_function(
func=self.delegate_work,
name="Delegate work to co-worker",
description=self.i18n.tools("delegate_work").format(
coworkers=", ".join([agent.role for agent in self.agents])
coworkers="\n".join([f"- {agent.role}" for agent in self.agents])
),
),
Tool.from_function(
StructuredTool.from_function(
func=self.ask_question,
name="Ask question to co-worker",
description=self.i18n.tools("ask_question").format(
coworkers=", ".join([agent.role for agent in self.agents])
coworkers="\n".join([f"- {agent.role}" for agent in self.agents])
),
),
]
def delegate_work(self, command):
def delegate_work(self, coworker: str, task: str, context: str):
"""Useful to delegate a specific task to a coworker."""
return self._execute(command)
return self._execute(coworker, task, context)
def ask_question(self, command):
def ask_question(self, coworker: str, question: str, context: str):
"""Useful to ask a question, opinion or take from a coworker."""
return self._execute(command)
return self._execute(coworker, question, context)
def _execute(self, command):
def _execute(self, agent, task, context):
"""Execute the command."""
try:
agent, task, context = command.split("|")
except ValueError:
return self.i18n.errors("agent_tool_missing_param")
if not agent or not task or not context:
return self.i18n.errors("agent_tool_missing_param")
agent = [
available_agent
for available_agent in self.agents
if available_agent.role == agent
]
agent = [
available_agent
for available_agent in self.agents
if available_agent.role.strip().lower() == agent.strip().lower()
]
except:
return self.i18n.errors("agent_tool_unexsiting_coworker").format(
coworkers="\n".join([f"- {agent.role}" for agent in self.agents])
)
if not agent:
return self.i18n.errors("agent_tool_unexsiting_coworker").format(
coworkers=", ".join([agent.role for agent in self.agents])
coworkers="\n".join([f"- {agent.role}" for agent in self.agents])
)
agent = agent[0]
task = Task(description=task, agent=agent)
return agent.execute_task(task, context)

View File

@@ -1,4 +1,4 @@
from langchain.tools import Tool
from langchain.tools import StructuredTool
from pydantic import BaseModel, ConfigDict, Field
from crewai.agents.cache import CacheHandler
@@ -15,7 +15,7 @@ class CacheTools(BaseModel):
)
def tool(self):
return Tool.from_function(
return StructuredTool.from_function(
func=self.hit_cache,
name=self.name,
description="Reads directly from the cache",

View File

@@ -0,0 +1,21 @@
from typing import Any, Dict, Optional
from pydantic import BaseModel as PydanticBaseModel
from pydantic import Field as PydanticField
from pydantic.v1 import BaseModel, Field
class ToolCalling(BaseModel):
tool_name: str = Field(..., description="The name of the tool to be called.")
arguments: Optional[Dict[str, Any]] = Field(
..., description="A dictinary of arguments to be passed to the tool."
)
class InstructorToolCalling(PydanticBaseModel):
tool_name: str = PydanticField(
..., description="The name of the tool to be called."
)
arguments: Optional[Dict[str, Any]] = PydanticField(
..., description="A dictinary of arguments to be passed to the tool."
)

View File

@@ -0,0 +1,39 @@
import json
from typing import Any, List
import regex
from langchain.output_parsers import PydanticOutputParser
from langchain_core.exceptions import OutputParserException
from langchain_core.outputs import Generation
from langchain_core.pydantic_v1 import ValidationError
class ToolOutputParser(PydanticOutputParser):
"""Parses the function calling of a tool usage and it's arguments."""
def parse_result(self, result: List[Generation], *, partial: bool = False) -> Any:
result[0].text = self._transform_in_valid_json(result[0].text)
json_object = super().parse_result(result)
try:
return self.pydantic_object.parse_obj(json_object)
except ValidationError as e:
name = self.pydantic_object.__name__
msg = f"Failed to parse {name} from completion {json_object}. Got: {e}"
raise OutputParserException(msg, llm_output=json_object)
def _transform_in_valid_json(self, text) -> str:
text = text.replace("```", "").replace("json", "")
json_pattern = r"\{(?:[^{}]|(?R))*\}"
matches = regex.finditer(json_pattern, text)
for match in matches:
try:
# Attempt to parse the matched string as JSON
json_obj = json.loads(match.group())
# Return the first successfully parsed JSON object
json_obj = json.dumps(json_obj)
return str(json_obj)
except json.JSONDecodeError:
# If parsing fails, skip to the next match
continue
return text

View File

@@ -0,0 +1,227 @@
from textwrap import dedent
from typing import Any, List, Union
from langchain_core.tools import BaseTool
from langchain_openai import ChatOpenAI
from crewai.agents.tools_handler import ToolsHandler
from crewai.telemtry import Telemetry
from crewai.tools.tool_calling import InstructorToolCalling, ToolCalling
from crewai.utilities import I18N, Converter, ConverterError, Printer
OPENAI_BIGGER_MODELS = ["gpt-4"]
class ToolUsageErrorException(Exception):
"""Exception raised for errors in the tool usage."""
def __init__(self, message: str) -> None:
self.message = message
super().__init__(self.message)
class ToolUsage:
"""
Class that represents the usage of a tool by an agent.
Attributes:
task: Task being executed.
tools_handler: Tools handler that will manage the tool usage.
tools: List of tools available for the agent.
tools_description: Description of the tools available for the agent.
tools_names: Names of the tools available for the agent.
llm: Language model to be used for the tool usage.
function_calling_llm: Language model to be used for the tool usage.
"""
def __init__(
self,
tools_handler: ToolsHandler,
tools: List[BaseTool],
tools_description: str,
tools_names: str,
task: Any,
llm: Any,
function_calling_llm: Any,
) -> None:
self._i18n: I18N = I18N()
self._printer: Printer = Printer()
self._telemetry: Telemetry = Telemetry()
self._run_attempts: int = 1
self._max_parsing_attempts: int = 3
self._remeber_format_after_usages: int = 3
self.tools_description = tools_description
self.tools_names = tools_names
self.tools_handler = tools_handler
self.tools = tools
self.task = task
self.llm = function_calling_llm or llm
# Set the maximum parsing attempts for bigger models
if (isinstance(self.llm, ChatOpenAI)) and (self.llm.openai_api_base == None):
if self.llm.model_name in OPENAI_BIGGER_MODELS:
self._max_parsing_attempts = 2
self._remeber_format_after_usages = 4
def parse(self, tool_string: str):
"""Parse the tool string and return the tool calling."""
return self._tool_calling(tool_string)
def use(
self, calling: Union[ToolCalling, InstructorToolCalling], tool_string: str
) -> str:
if isinstance(calling, ToolUsageErrorException):
error = calling.message
self._printer.print(content=f"\n\n{error}\n", color="red")
return error
try:
tool = self._select_tool(calling.tool_name)
except Exception as e:
error = getattr(e, "message", str(e))
self._printer.print(content=f"\n\n{error}\n", color="red")
return error
return f"{self._use(tool_string=tool_string, tool=tool, calling=calling)}\n\n{self._i18n.slice('final_answer_format')}"
def _use(
self,
tool_string: str,
tool: BaseTool,
calling: Union[ToolCalling, InstructorToolCalling],
) -> None:
if self._check_tool_repeated_usage(calling=calling):
try:
result = self._i18n.errors("task_repeated_usage").format(
tool=calling.tool_name,
tool_input=", ".join(
[str(arg) for arg in calling.arguments.values()]
),
)
self._printer.print(content=f"\n\n{result}\n", color="yellow")
self._telemetry.tool_repeated_usage(
llm=self.llm, tool_name=tool.name, attempts=self._run_attempts
)
result = self._format_result(result=result)
return result
except Exception:
pass
result = self.tools_handler.cache.read(
tool=calling.tool_name, input=calling.arguments
)
if not result:
try:
if calling.arguments:
result = tool._run(**calling.arguments)
else:
result = tool._run()
except Exception as e:
self._run_attempts += 1
if self._run_attempts > self._max_parsing_attempts:
self._telemetry.tool_usage_error(llm=self.llm)
error_message = self._i18n.errors("tool_usage_exception").format(
error=e
)
error = ToolUsageErrorException(
f'\n{error_message}.\nMoving one then. {self._i18n.slice("format").format(tool_names=self.tools_names)}'
).message
self._printer.print(content=f"\n\n{error_message}\n", color="red")
return error
return self.use(calling=calling, tool_string=tool_string)
self.tools_handler.on_tool_use(calling=calling, output=result)
self._printer.print(content=f"\n\n{result}\n", color="yellow")
self._telemetry.tool_usage(
llm=self.llm, tool_name=tool.name, attempts=self._run_attempts
)
result = self._format_result(result=result)
return result
def _format_result(self, result: Any) -> None:
self.task.used_tools += 1
if self._should_remember_format():
result = self._remember_format(result=result)
return result
def _should_remember_format(self) -> None:
return self.task.used_tools % self._remeber_format_after_usages == 0
def _remember_format(self, result: str) -> None:
result = str(result)
result += "\n\n" + self._i18n.slice("tools").format(
tools=self.tools_description, tool_names=self.tools_names
)
return result
def _check_tool_repeated_usage(
self, calling: Union[ToolCalling, InstructorToolCalling]
) -> None:
if last_tool_usage := self.tools_handler.last_used_tool:
return (calling.tool_name == last_tool_usage.tool_name) and (
calling.arguments == last_tool_usage.arguments
)
def _select_tool(self, tool_name: str) -> BaseTool:
for tool in self.tools:
if tool.name.lower().strip() == tool_name.lower().strip():
return tool
raise Exception(f"Tool '{tool_name}' not found.")
def _render(self) -> str:
"""Render the tool name and description in plain text."""
descriptions = []
for tool in self.tools:
args = {
k: {k2: v2 for k2, v2 in v.items() if k2 in ["description", "type"]}
for k, v in tool.args.items()
}
descriptions.append(
"\n".join(
[
f"Tool Name: {tool.name.lower()}",
f"Tool Description: {tool.description}",
f"Tool Arguments: {args}",
]
)
)
return "\n--\n".join(descriptions)
def _is_gpt(self, llm) -> bool:
return isinstance(llm, ChatOpenAI) and llm.openai_api_base == None
def _tool_calling(
self, tool_string: str
) -> Union[ToolCalling, InstructorToolCalling]:
try:
model = InstructorToolCalling if self._is_gpt(self.llm) else ToolCalling
converter = Converter(
text=f"Only tools available:\n###\n{self._render()}\n\nReturn a valid schema for the tool, the tool name must be exactly equal one of the options, use this text to inform the valid ouput schema:\n\n{tool_string}```",
llm=self.llm,
model=model,
instructions=dedent(
"""\
The schema should have the following structure, only two keys:
- tool_name: str
- arguments: dict (with all arguments being passed)
Example:
{"tool_name": "tool name", "arguments": {"arg_name1": "value", "arg_name2": 2}}""",
),
max_attemps=1,
)
calling = converter.to_pydantic()
if isinstance(calling, ConverterError):
raise calling
except Exception as e:
self._run_attempts += 1
if self._run_attempts > self._max_parsing_attempts:
self._telemetry.tool_usage_error(llm=self.llm)
self._printer.print(content=f"\n\n{e}\n", color="red")
return ToolUsageErrorException(
f'{self._i18n.errors("tool_usage_error")}\n{self._i18n.slice("format").format(tool_names=self.tools_names)}'
)
return self._tool_calling(tool_string)
return calling

View File

@@ -9,18 +9,19 @@
"task": "Αρχή! Αυτό είναι ΠΟΛΥ σημαντικό για εσάς, η δουλειά σας εξαρτάται από αυτό!\n\nΤρέχουσα εργασία: {input}",
"memory": "Αυτή είναι η περίληψη της μέχρι τώρα δουλειάς σας:\n{chat_history}",
"role_playing": "Είσαι {role}.\n{backstory}\n\nΟ προσωπικός σας στόχος είναι: {goal}",
"tools": "ΕΡΓΑΛΕΙΑ:\n------\nΈχετε πρόσβαση μόνο στα ακόλουθα εργαλεία:\n\n{tools}\n\nΓια να χρησιμοποιήσετε ένα εργαλείο, χρησιμοποιήστε την ακόλουθη ακριβώς μορφή:\n\n```\nΣκέψη: Χρειάζεται να χρησιμοποιήσω κάποιο εργαλείο; Ναί\nΔράση: η ενέργεια που πρέπει να γίνει, πρέπει να είναι μία από τις[{tool_names}], μόνο το όνομα.\nΕνέργεια προς εισαγωγή: η είσοδος στη δράση\nΠαρατήρηση: το αποτέλεσμα της δράσης\n```\n\nΌταν έχετε μια απάντηση για την εργασία σας ή εάν δεν χρειάζεται να χρησιμοποιήσετε ένα εργαλείο, ΠΡΕΠΕΙ να χρησιμοποιήσετε τη μορφή:\n\n```\nΣκέψη: Χρειάζεται να χρησιμοποιήσω κάποιο εργαλείο; Οχι\nΤελική απάντηση: [η απάντησή σας εδώ]```",
"tools": "ΕΡΓΑΛΕΙΑ:\n------\nΈχετε πρόσβαση μόνο στα ακόλουθα εργαλεία:\n\n{tools}\n\nΓια να χρησιμοποιήσετε ένα εργαλείο, χρησιμοποιήστε την ακόλουθη ακριβώς μορφή:\n\n```\nThought: Χρειάζεται να χρησιμοποιήσω κάποιο εργαλείο; Ναι\nΕνέργεια: το εργαλείο που θέλετε να χρησιμοποιήσετε, θα πρέπει να είναι ένα από τα [{tool_names}], μόνο το όνομα.\nΕισαγωγή ενέργειας: Οποιαδήποτε και όλες οι σχετικές πληροφορίες και το πλαίσιο χρήσης του εργαλείου\nΠαρατήρηση: το αποτέλεσμα της χρήσης του εργαλείου\n```\n\nΌταν έχετε μια απάντηση για την εργασία σας ή εάν δεν χρειάζεται να χρησιμοποιήσετε ένα εργαλείο, ΠΡΕΠΕΙ να χρησιμοποιήσετε τη μορφή:\n\n```\nΣκέψη: Πρέπει να χρησιμοποιήσω ένα εργαλείο ? Όχι\nΤελική απάντηση: [η απάντησή σας εδώ]```",
"task_with_context": "{task}\nΑυτό είναι το πλαίσιο με το οποίο εργάζεστε:\n{context}",
"expected_output": "Η τελική σας απάντηση πρέπει να είναι: {expected_output}"
},
"errors": {
"force_final_answer": "Στην πραγματικότητα, χρησιμοποίησα πάρα πολλά εργαλεία, οπότε θα σταματήσω τώρα και θα σας δώσω την απόλυτη ΚΑΛΥΤΕΡΗ τελική μου απάντηση ΤΩΡΑ, χρησιμοποιώντας την αναμενόμενη μορφή: ```\nΣκέφτηκα: Χρειάζεται να χρησιμοποιήσω ένα εργαλείο; Όχι\nΤελική απάντηση: [η απάντησή σας εδώ]```",
"agent_tool_missing_param": "\nΣφάλμα κατά την εκτέλεση του εργαλείου. Λείπουν ακριβώς 3 διαχωρισμένες τιμές σωλήνων (|). Για παράδειγμα, `coworker|task|context`. Πρέπει να φροντίσω να περάσω το πλαίσιο ως πλαίσιο.\n",
"agent_tool_unexsiting_coworker": "\nΣφάλμα κατά την εκτέλεση του εργαλείου. Ο συνάδελφος που αναφέρεται στο Ενέργεια προς εισαγωγή δεν βρέθηκε, πρέπει να είναι μία από τις ακόλουθες επιλογές: {coworkers}.\n",
"task_repeated_usage": "Μόλις χρησιμοποίησα το {tool} εργαλείο με είσοδο {tool_input}. Άρα ξέρω ήδη το αποτέλεσμα αυτού και δεν χρειάζεται να το χρησιμοποιήσω τώρα.\n"
"agent_tool_unexsiting_coworker": "\nΣφάλμα κατά την εκτέλεση του εργαλείου. Ο συνάδελφος που αναφέρεται στο Action Input δεν βρέθηκε, πρέπει να είναι μία από τις ακόλουθες επιλογές:\n{coworkers}..\n",
"task_repeated_usage": "Μόλις χρησιμοποίησα το εργαλείο {tool} με είσοδο {tool_input}. Άρα το ξέρω ήδη και πρέπει να σταματήσω να το χρησιμοποιώ στη σειρά με την ίδια είσοδο. \nΘα μπορούσα να δώσω την τελική μου απάντηση εάν είμαι έτοιμος, χρησιμοποιώντας ακριβώς την αναμενόμενη μορφή παρακάτω: \n\nΣκέφτηκα: Χρειάζεται να χρησιμοποιήσω κάποιο εργαλείο; Όχι\nΤελική απάντηση: [η απάντησή σας εδώ]\n",
"tool_usage_error": "Φαίνεται ότι αντιμετωπίσαμε ένα απροσδόκητο σφάλμα κατά την προσπάθεια χρήσης του εργαλείου.",
"tool_usage_exception": "Φαίνεται ότι αντιμετωπίσαμε ένα απροσδόκητο σφάλμα κατά την προσπάθεια χρήσης του εργαλείου. Αυτό ήταν το σφάλμα: {error}"
},
"tools": {
"delegate_work": "Χρήσιμο για την ανάθεση μιας συγκεκριμένης εργασίας σε έναν από τους παρακάτω συναδέλφους: {coworkers}.\nΗ είσοδος σε αυτό το εργαλείο θα πρέπει να είναι ένα κείμενο χωρισμένο σε σωλήνα (|) μήκους 3 (τρία), που αντιπροσωπεύει τον συνάδελφο στον οποίο θέλετε να του ζητήσετε (μία από τις επιλογές), την εργασία και όλο το πραγματικό πλαίσιο που έχετε για την εργασία .\nΓια παράδειγμα, `coworker|task|context`.",
"ask_question": "Χρήσιμο για να κάνετε μια ερώτηση, γνώμη ή αποδοχή από τους παρακάτω συναδέλφους: {coworkers}.\nΗ είσοδος σε αυτό το εργαλείο θα πρέπει να είναι ένα κείμενο χωρισμένο σε σωλήνα (|) μήκους 3 (τρία), που αντιπροσωπεύει τον συνάδελφο στον οποίο θέλετε να το ρωτήσετε (μία από τις επιλογές), την ερώτηση και όλο το πραγματικό πλαίσιο που έχετε για την ερώτηση.\nΓια παράδειγμα, `coworker|question|context`."
"delegate_work": "Αναθέστε μια συγκεκριμένη εργασία σε έναν από τους παρακάτω συναδέλφους:\n{coworkers}.\nΗ εισαγωγή σε αυτό το εργαλείο θα πρέπει να είναι ο ρόλος του συναδέλφου, η εργασία που θέλετε να κάνει και ΟΛΟ το απαραίτητο πλαίσιο για την εκτέλεση της εργασίας, δεν γνωρίζουν τίποτα για την εργασία, γι' αυτό μοιραστείτε απολύτως όλα όσα γνωρίζετε, μην αναφέρετε πράγματα, αλλά εξηγήστε τα.",
"ask_question": "Κάντε μια συγκεκριμένη ερώτηση σε έναν από τους παρακάτω συναδέλφους:\n{coworkers}.\nΗ είσοδος σε αυτό το εργαλείο θα πρέπει να είναι ο ρόλος του συναδέλφου, η ερώτηση που έχετε για αυτόν και ΟΛΟ το απαραίτητο πλαίσιο για να κάνετε σωστά την ερώτηση, δεν γνωρίζουν τίποτα για την ερώτηση, γι' αυτό μοιραστείτε απολύτως όλα όσα γνωρίζετε, μην αναφέρετε πράγματα, αλλά εξηγήστε τα."
}
}

View File

@@ -5,22 +5,29 @@
"backstory": "You are a seasoned manager with a knack for getting the best out of your team.\nYou are also known for your ability to delegate work to the right people, and to ask the right questions to get the best out of your team.\nEven though you don't perform tasks by yourself, you have a lot of experience in the field, which allows you to properly evaluate the work of your team members."
},
"slices": {
"observation": "\nObservation",
"task": "Begin! This is VERY important to you, your job depends on it!\n\nCurrent Task: {input}",
"observation": "\nResult",
"task": "\n\nCurrent Task: {input}\n\n Begin! This is VERY important to you, your job depends on it!\n\n",
"memory": "This is the summary of your work so far:\n{chat_history}",
"role_playing": "You are {role}.\n{backstory}\n\nYour personal goal is: {goal}",
"tools": "TOOLS:\n------\nYou have access to only the following tools:\n\n{tools}\n\nTo use a tool, please use the exact following format:\n\n```\nThought: Do I need to use a tool? Yes\nAction: the action to take, should be one of [{tool_names}], just the name.\nAction Input: the input to the action\nObservation: the result of the action\n```\n\nWhen you have a response for your task, or if you do not need to use a tool, you MUST use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer: [your response here]```",
"tools": "I have access to ONLY the following tools, I can use only these, use one at time:\n\n{tools}\n\nTo use a tool I MUST use the exact following format:\n\n```\nUse Tool: the tool I wanna use, should be one of [{tool_names}] and absolute all relevant input and context for using the tool, I must use only one tool at once.\nResult: [result of the tool]\n```\n\nTo give my final answer I'll use the exact following format:\n\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\nI MUST use these formats, my jobs depends on it!",
"no_tools": "To give my final answer use the exact following format:\n\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\nI MUST use these formats, my jobs depends on it!",
"format": "I MUST either use a tool (use one at time) OR give my best final answer. To use a single tool I MUST use the exact following format:\n\n```\nUse Tool: the tool I wanna use, should be one of [{tool_names}] and absolute all relevant input and context for using the tool, I must use only one tool at once.\nResult: [result of the tool]\n```\n\nTo give my final answer use the exact following format:\n\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\nI MUST use these formats, my jobs depends on it!",
"final_answer_format": "If I don't need to use any more tools, I must make sure use the correct format to give my final answer:\n\n```Final Answer: [my expected final answer, entire content of my most complete final answer goes here]```\n I MUST use these formats, my jobs depends on it!",
"format_without_tools": "\nSorry, I didn't use the right format. I MUST either use a tool (among the available ones), OR give my best final answer.\nI just remembered the expected formats I must follow:\n\n```\nUse Tool: the tool I wanna use, and absolute all relevant input and context for using the tool, I must use only one tool at once.\nResult: [result of the tool]\n```\nOR\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\n",
"task_with_context": "{task}\nThis is the context you're working with:\n{context}",
"expected_output": "Your final answer must be: {expected_output}"
},
"errors": {
"force_final_answer": "Actually, I used too many tools, so I'll stop now and give you my absolute BEST Final answer NOW, using the expected format: ```\nThought: Do I need to use a tool? No\nFinal Answer: [your response here]```",
"agent_tool_missing_param": "\nError executing tool. Missing exact 3 pipe (|) separated values. For example, `coworker|task|context`. I need to make sure to pass context as context.\n",
"agent_tool_unexsiting_coworker": "\nError executing tool. Co-worker mentioned on the Action Input not found, it must to be one of the following options: {coworkers}.\n",
"task_repeated_usage": "I just used the {tool} tool with input {tool_input}. So I already know the result of that and don't need to use it now.\n"
"unexpected_format": "\nSorry, I didn't use the expected format, I MUST either use a tool (use one at time) OR give my best final answer.\n",
"force_final_answer": "Actually, I used too many tools, so I'll stop now and give you my absolute BEST Final answer NOW, using exaclty the expected format bellow:\n\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\nI MUST use these formats, my jobs depends on it!",
"agent_tool_unexsiting_coworker": "\nError executing tool. Co-worker mentioned not found, it must to be one of the following options:\n{coworkers}\n",
"task_repeated_usage": "I already used the {tool} tool with input {tool_input}. So I already know that and must stop using it with same input. \nI could give my best complete final answer if I'm ready, using exaclty the expected format bellow:\n\n```\nFinal Answer: [my expected final answer, entire content of my most complete final answer goes here]\n```\nI MUST use these formats, my jobs depends on it!",
"tool_usage_error": "It seems we encountered an unexpected error while trying to use the tool.",
"wrong_tool_name": "You tried to use the tool {tool}, but it doesn't exist. You must use one of the following tools, use one at time: {tools}.",
"tool_usage_exception": "It seems we encountered an unexpected error while trying to use the tool. This was the error: {error}"
},
"tools": {
"delegate_work": "Useful to delegate a specific task to one of the following co-workers: {coworkers}.\nThe input to this tool should be a pipe (|) separated text of length 3 (three), representing the co-worker you want to ask it to (one of the options), the task and all actual context you have for the task.\nFor example, `coworker|task|context`.",
"ask_question": "Useful to ask a question, opinion or take from on of the following co-workers: {coworkers}.\nThe input to this tool should be a pipe (|) separated text of length 3 (three), representing the co-worker you want to ask it to (one of the options), the question and all actual context you have for the question.\n For example, `coworker|question|context`."
"delegate_work": "Delegate a specific task to one of the following co-workers: {coworkers}\nThe input to this tool should be the coworker, the task you want them to do, and ALL necessary context to exectue the task, they know nothing about the task, so share absolute everything you know, don't reference things but instead explain them.",
"ask_question": "Ask a specific question to one of the following co-workers: {coworkers}\nThe input to this tool should be the coworker, the question you have for them, and ALL necessary context to ask the question properly, they know nothing about the question, so share absolute everything you know, don't reference things but instead explain them."
}
}

View File

@@ -1,4 +1,7 @@
from .converter import Converter, ConverterError
from .i18n import I18N
from .instructor import Instructor
from .logger import Logger
from .printer import Printer
from .prompts import Prompts
from .rpm_controller import RPMController

View File

@@ -0,0 +1,87 @@
import json
from typing import Any, Optional
from langchain.schema import HumanMessage, SystemMessage
from langchain_openai import ChatOpenAI
from pydantic import BaseModel, Field, PrivateAttr, model_validator
class ConverterError(Exception):
"""Error raised when Converter fails to parse the input."""
def __init__(self, message: str, *args: object) -> None:
super().__init__(message, *args)
self.message = message
class Converter(BaseModel):
"""Class that converts text into either pydantic or json."""
_is_gpt: bool = PrivateAttr(default=True)
text: str = Field(description="Text to be converted.")
llm: Any = Field(description="The language model to be used to convert the text.")
model: Any = Field(description="The model to be used to convert the text.")
instructions: str = Field(description="Conversion instructions to the LLM.")
max_attemps: Optional[int] = Field(
description="Max number of attemps to try to get the output formated.",
default=3,
)
@model_validator(mode="after")
def check_llm_provider(self):
if not self._is_gpt(self.llm):
self._is_gpt = False
def to_pydantic(self, current_attempt=1):
"""Convert text to pydantic."""
try:
if self._is_gpt:
return self._create_instructor().to_pydantic()
else:
return self._create_chain().invoke({})
except Exception as e:
if current_attempt < self.max_attemps:
return self.to_pydantic(current_attempt + 1)
return ConverterError(
f"Failed to convert text into a pydantic model due to the following error: {e}"
)
def to_json(self, current_attempt=1):
"""Convert text to json."""
try:
if self._is_gpt:
return self._create_instructor().to_json()
else:
return json.dumps(self._create_chain().invoke({}).model_dump())
except Exception:
if current_attempt < self.max_attemps:
return self.to_json(current_attempt + 1)
return ConverterError("Failed to convert text into JSON.")
def _create_instructor(self):
"""Create an instructor."""
from crewai.utilities import Instructor
inst = Instructor(
llm=self.llm,
max_attemps=self.max_attemps,
model=self.model,
content=self.text,
instructions=self.instructions,
)
return inst
def _create_chain(self):
"""Create a chain."""
from crewai.utilities.crew_pydantic_output_parser import (
CrewPydanticOutputParser,
)
parser = CrewPydanticOutputParser(pydantic_object=self.model)
new_prompt = HumanMessage(content=self.text) + SystemMessage(
content=self.instructions
)
return new_prompt | self.llm | parser
def _is_gpt(self, llm) -> bool:
return isinstance(llm, ChatOpenAI) and llm.openai_api_base == None

View File

@@ -0,0 +1,43 @@
import json
from typing import Any, List, Type, Union
import regex
from langchain.output_parsers import PydanticOutputParser
from langchain_core.exceptions import OutputParserException
from langchain_core.outputs import Generation
from langchain_core.pydantic_v1 import ValidationError
from pydantic import BaseModel
from pydantic.v1 import BaseModel as V1BaseModel
class CrewPydanticOutputParser(PydanticOutputParser):
"""Parses the text into pydantic models"""
pydantic_object: Union[Type[BaseModel], Type[V1BaseModel]]
def parse_result(self, result: List[Generation], *, partial: bool = False) -> Any:
result[0].text = self._transform_in_valid_json(result[0].text)
json_object = super().parse_result(result)
try:
return self.pydantic_object.parse_obj(json_object)
except ValidationError as e:
name = self.pydantic_object.__name__
msg = f"Failed to parse {name} from completion {json_object}. Got: {e}"
raise OutputParserException(msg, llm_output=json_object)
def _transform_in_valid_json(self, text) -> str:
text = text.replace("```", "").replace("json", "")
json_pattern = r"\{(?:[^{}]|(?R))*\}"
matches = regex.finditer(json_pattern, text)
for match in matches:
try:
# Attempt to parse the matched string as JSON
json_obj = json.loads(match.group())
# Return the first successfully parsed JSON object
json_obj = json.dumps(json_obj)
return str(json_obj)
except json.JSONDecodeError:
# If parsing fails, skip to the next match
continue
return text

View File

@@ -0,0 +1,50 @@
from typing import Any, Optional, Type
import instructor
from pydantic import BaseModel, Field, PrivateAttr, model_validator
class Instructor(BaseModel):
"""Class that wraps an agent llm with instructor."""
_client: Any = PrivateAttr()
content: str = Field(description="Content to be sent to the instructor.")
agent: Optional[Any] = Field(
description="The agent that needs to use instructor.", default=None
)
llm: Optional[Any] = Field(
description="The agent that needs to use instructor.", default=None
)
instructions: Optional[str] = Field(
description="Instructions to be sent to the instructor.",
default=None,
)
model: Type[BaseModel] = Field(
description="Pydantic model to be used to create an output."
)
@model_validator(mode="after")
def set_instructor(self):
"""Set instructor."""
if self.agent and not self.llm:
self.llm = self.agent.function_calling_llm or self.agent.llm
self._client = instructor.patch(
self.llm.client._client,
mode=instructor.Mode.TOOLS,
)
return self
def to_json(self):
model = self.to_pydantic()
return model.model_dump_json(indent=2)
def to_pydantic(self):
messages = [{"role": "user", "content": self.content}]
if self.instructions:
messages.append({"role": "system", "content": self.instructions})
model = self._client.chat.completions.create(
model=self.llm.model_name, response_model=self.model, messages=messages
)
return model

View File

@@ -0,0 +1,14 @@
class Printer:
def print(self, content: str, color: str):
if color == "yellow":
self._print_yellow(content)
elif color == "red":
self._print_red(content)
else:
print(content)
def _print_yellow(self, content):
print("\033[93m {}\033[00m".format(content))
def _print_red(self, content):
print("\033[91m {}\033[00m".format(content))

View File

@@ -1,6 +1,6 @@
from typing import ClassVar
from typing import Any, ClassVar
from langchain.prompts import PromptTemplate, BasePromptTemplate
from langchain.prompts import BasePromptTemplate, PromptTemplate
from pydantic import BaseModel, Field
from crewai.utilities import I18N
@@ -10,12 +10,13 @@ class Prompts(BaseModel):
"""Manages and generates prompts for a generic agent with support for different languages."""
i18n: I18N = Field(default=I18N())
tools: list[Any] = Field(default=[])
SCRATCHPAD_SLICE: ClassVar[str] = "\n{agent_scratchpad}"
def task_execution_with_memory(self) -> BasePromptTemplate:
"""Generate a prompt for task execution with memory components."""
return self._build_prompt(["role_playing", "tools", "memory", "task"])
slices = ["role_playing", "tools", "memory", "task"]
return self._build_prompt(slices)
def task_execution_without_tools(self) -> BasePromptTemplate:
"""Generate a prompt for task execution without tools components."""
@@ -23,10 +24,12 @@ class Prompts(BaseModel):
def task_execution(self) -> BasePromptTemplate:
"""Generate a standard prompt for task execution."""
return self._build_prompt(["role_playing", "tools", "task"])
slices = ["role_playing", "tools", "task"]
return self._build_prompt(slices)
def _build_prompt(self, components: list[str]) -> BasePromptTemplate:
"""Constructs a prompt string from specified components."""
prompt_parts = [self.i18n.slice(component) for component in components]
prompt_parts.append(self.SCRATCHPAD_SLICE)
return PromptTemplate.from_template("".join(prompt_parts))
prompt = PromptTemplate.from_template("".join(prompt_parts))
return prompt

View File

@@ -0,0 +1,38 @@
from typing import Type, get_args, get_origin
from pydantic import BaseModel
class PydanticSchemaParser(BaseModel):
model: Type[BaseModel]
def get_schema(self) -> str:
"""
Public method to get the schema of a Pydantic model.
:param model: The Pydantic model class to generate schema for.
:return: String representation of the model schema.
"""
return self._get_model_schema(self.model)
def _get_model_schema(self, model, depth=0) -> str:
lines = []
for field_name, field in model.model_fields.items():
field_type_str = self._get_field_type(field, depth + 1)
lines.append(f"{' ' * 4 * depth}- {field_name}: {field_type_str}")
return "\n".join(lines)
def _get_field_type(self, field, depth) -> str:
field_type = field.annotation
if get_origin(field_type) is list:
list_item_type = get_args(field_type)[0]
if issubclass(list_item_type, BaseModel):
nested_schema = self._get_model_schema(list_item_type, depth + 1)
return f"List[\n{nested_schema}\n{' ' * 4 * depth}]"
else:
return f"List[{list_item_type.__name__}]"
elif issubclass(field_type, BaseModel):
return f"\n{self._get_model_schema(field_type, depth)}"
else:
return field_type.__name__

View File

@@ -9,6 +9,8 @@ from langchain_openai import ChatOpenAI
from crewai import Agent, Crew, Task
from crewai.agents.cache import CacheHandler
from crewai.agents.executor import CrewAgentExecutor
from crewai.tools.tool_calling import InstructorToolCalling
from crewai.tools.tool_usage import ToolUsage
from crewai.utilities import RPMController
@@ -62,7 +64,8 @@ def test_agent_without_memory():
llm=ChatOpenAI(temperature=0, model="gpt-4"),
)
result = no_memory_agent.execute_task("How much is 1 + 1?")
task = Task(description="How much is 1 + 1?", agent=no_memory_agent)
result = no_memory_agent.execute_task(task)
assert result == "1 + 1 equals 2."
assert no_memory_agent.agent_executor.memory is None
@@ -78,20 +81,18 @@ def test_agent_execution():
allow_delegation=False,
)
output = agent.execute_task("How much is 1 + 1?")
assert output == "2"
task = Task(description="How much is 1 + 1?", agent=agent)
output = agent.execute_task(task)
assert output == "1 + 1 equals 2."
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_execution_with_tools():
@tool
def multiplier(numbers) -> float:
"""Useful for when you need to multiply two numbers together.
The input to this tool should be a comma separated list of numbers of
length two, representing the two numbers you want to multiply together.
For example, `1,2` would be the input if you wanted to multiply 1 by 2."""
a, b = numbers.split(",")
return int(a) * int(b)
def multiplier(first_number: int, second_number: int) -> float:
"""Useful for when you need to multiply two numbers together."""
return first_number * second_number
agent = Agent(
role="test role",
@@ -101,20 +102,17 @@ def test_agent_execution_with_tools():
allow_delegation=False,
)
output = agent.execute_task("What is 3 times 4")
assert output == "12"
task = Task(description="What is 3 times 4?", agent=agent)
output = agent.execute_task(task)
assert output == "The result of 3 times 4 is 12."
@pytest.mark.vcr(filter_headers=["authorization"])
def test_logging_tool_usage():
@tool
def multiplier(numbers) -> float:
"""Useful for when you need to multiply two numbers together.
The input to this tool should be a comma separated list of numbers of
length two, representing the two numbers you want to multiply together.
For example, `1,2` would be the input if you wanted to multiply 1 by 2."""
a, b = numbers.split(",")
return int(a) * int(b)
def multiplier(first_number: int, second_number: int) -> float:
"""Useful for when you need to multiply two numbers together."""
return first_number * second_number
agent = Agent(
role="test role",
@@ -126,26 +124,24 @@ def test_logging_tool_usage():
)
assert agent.tools_handler.last_used_tool == {}
output = agent.execute_task("What is 3 times 5?")
tool_usage = {
"tool": "multiplier",
"input": "3,5",
}
assert output == "3 times 5 is 15."
assert agent.tools_handler.last_used_tool == tool_usage
task = Task(description="What is 3 times 4?", agent=agent)
# force cleaning cache
agent.tools_handler.cache = CacheHandler()
output = agent.execute_task(task)
tool_usage = InstructorToolCalling(
tool_name=multiplier.name, arguments={"first_number": 3, "second_number": 4}
)
assert output == "The result of multiplying 3 by 4 is 12."
assert agent.tools_handler.last_used_tool.tool_name == tool_usage.tool_name
assert agent.tools_handler.last_used_tool.arguments == tool_usage.arguments
@pytest.mark.vcr(filter_headers=["authorization"])
def test_cache_hitting():
@tool
def multiplier(numbers) -> float:
"""Useful for when you need to multiply two numbers together.
The input to this tool should be a comma separated list of numbers of
length two and ONLY TWO, representing the two numbers you want to multiply together.
For example, `1,2` would be the input if you wanted to multiply 1 by 2."""
a, b = numbers.split(",")
return int(a) * int(b)
def multiplier(first_number: int, second_number: int) -> float:
"""Useful for when you need to multiply two numbers together."""
return first_number * second_number
cache_handler = CacheHandler()
@@ -159,34 +155,47 @@ def test_cache_hitting():
verbose=True,
)
output = agent.execute_task("What is 2 times 6 times 3?")
output = agent.execute_task("What is 3 times 3?")
task1 = Task(description="What is 2 times 6?", agent=agent)
task2 = Task(description="What is 3 times 3?", agent=agent)
output = agent.execute_task(task1)
output = agent.execute_task(task2)
assert cache_handler._cache == {
"multiplier-12,3": "36",
"multiplier-2,6": "12",
"multiplier-3,3": "9",
"multiplier-{'first_number': 2, 'second_number': 6}": 12,
"multiplier-{'first_number': 3, 'second_number': 3}": 9,
}
output = agent.execute_task("What is 2 times 6 times 3? Return only the number")
task = Task(
description="What is 2 times 6 times 3? Return only the number", agent=agent
)
output = agent.execute_task(task)
assert output == "36"
assert cache_handler._cache == {
"multiplier-{'first_number': 2, 'second_number': 6}": 12,
"multiplier-{'first_number': 3, 'second_number': 3}": 9,
"multiplier-{'first_number': 12, 'second_number': 3}": 36,
}
with patch.object(CacheHandler, "read") as read:
read.return_value = "0"
output = agent.execute_task("What is 2 times 6?")
assert output == "0"
read.assert_called_with("multiplier", "2,6")
task = Task(
description="What is 2 times 6? Ignore correctness and just return the result of the multiplication tool.",
agent=agent,
)
output = agent.execute_task(task)
assert output == "The result of the multiplication of 2 and 6 is 0."
read.assert_called_with(
tool="multiplier", input={"first_number": 2, "second_number": 6}
)
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_execution_with_specific_tools():
@tool
def multiplier(numbers) -> float:
"""Useful for when you need to multiply two numbers together.
The input to this tool should be a comma separated list of numbers of
length two, representing the two numbers you want to multiply together.
For example, `1,2` would be the input if you wanted to multiply 1 by 2."""
a, b = numbers.split(",")
return int(a) * int(b)
def multiplier(first_number: int, second_number: int) -> float:
"""Useful for when you need to multiply two numbers together."""
return first_number * second_number
agent = Agent(
role="test role",
@@ -195,8 +204,9 @@ def test_agent_execution_with_specific_tools():
allow_delegation=False,
)
output = agent.execute_task(task="What is 3 times 4", tools=[multiplier])
assert output == "3 times 4 is 12."
task = Task(description="What is 3 times 4", agent=agent)
output = agent.execute_task(task=task, tools=[multiplier])
assert output == "12"
@pytest.mark.vcr(filter_headers=["authorization"])
@@ -218,13 +228,49 @@ def test_agent_custom_max_iterations():
with patch.object(
CrewAgentExecutor, "_iter_next_step", wraps=agent.agent_executor._iter_next_step
) as private_mock:
task = Task(
description="The final answer is 42. But don't give it yet, instead keep using the `get_final_answer` tool.",
)
agent.execute_task(
task="The final answer is 42. But don't give it yet, instead keep using the `get_final_answer` tool.",
task=task,
tools=[get_final_answer],
)
private_mock.assert_called_once()
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_repeated_tool_usage(capsys):
@tool
def get_final_answer(anything: str) -> float:
"""Get the final answer but don't give it yet, just re-use this
tool non-stop."""
return 42
agent = Agent(
role="test role",
goal="test goal",
backstory="test backstory",
max_iter=4,
llm=ChatOpenAI(model="gpt-4-0125-preview"),
allow_delegation=False,
verbose=True,
)
task = Task(
description="The final answer is 42. But don't give it until I tell you so, instead keep using the `get_final_answer` tool."
)
# force cleaning cache
agent.tools_handler.cache = CacheHandler()
agent.execute_task(
task=task,
tools=[get_final_answer],
)
captured = capsys.readouterr()
assert "Final Answer: 42" in captured.out
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_moved_on_after_max_iterations():
@tool
@@ -241,24 +287,20 @@ def test_agent_moved_on_after_max_iterations():
allow_delegation=False,
)
with patch.object(
CrewAgentExecutor, "_force_answer", wraps=agent.agent_executor._force_answer
) as private_mock:
output = agent.execute_task(
task="The final answer is 42. But don't give it yet, instead keep using the `get_final_answer` tool.",
tools=[get_final_answer],
)
assert (
output
== "I have used the tool multiple times and the final answer remains 42."
)
private_mock.assert_called_once()
task = Task(
description="The final answer is 42. But don't give it yet, instead keep using the `get_final_answer` tool. Until you're told you could give my final answer if I'm ready."
)
output = agent.execute_task(
task=task,
tools=[get_final_answer],
)
assert output == "42"
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_respect_the_max_rpm_set(capsys):
@tool
def get_final_answer(numbers) -> float:
def get_final_answer(anything: str) -> float:
"""Get the final answer but don't give it yet, just re-use this
tool non-stop."""
return 42
@@ -275,13 +317,16 @@ def test_agent_respect_the_max_rpm_set(capsys):
with patch.object(RPMController, "_wait_for_next_minute") as moveon:
moveon.return_value = True
task = Task(
description="Use tool logic for `get_final_answer` but fon't give you final answer yet, instead keep using it unless you're told to give your final answer"
)
output = agent.execute_task(
task="The final answer is 42. But don't give it yet, instead keep using the `get_final_answer` tool.",
task=task,
tools=[get_final_answer],
)
assert (
output
== "I've used the `get_final_answer` tool multiple times and it consistently returns the number 42."
== 'The result of using the `get_final_answer` tool with the input "test input" is 42.'
)
captured = capsys.readouterr()
assert "Max RPM reached, waiting for next minute to start." in captured.out
@@ -359,7 +404,7 @@ def test_agent_without_max_rpm_respet_crew_rpm(capsys):
agent=agent1,
),
Task(
description="Don't give a Final Answer, instead keep using the `get_final_answer` tool.",
description="Don't give a Final Answer, instead keep using the `get_final_answer` tool non-stop",
tools=[get_final_answer],
agent=agent2,
),
@@ -377,9 +422,76 @@ def test_agent_without_max_rpm_respet_crew_rpm(capsys):
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_use_specific_tasks_output_as_context(capsys):
pass
def test_agent_error_on_parsing_tool(capsys):
from unittest.mock import patch
from langchain.tools import tool
@tool
def get_final_answer(anything: str) -> float:
"""Get the final answer but don't give it yet, just re-use this
tool non-stop."""
return 42
agent1 = Agent(
role="test role",
goal="test goal",
backstory="test backstory",
verbose=True,
)
tasks = [
Task(
description="Use the get_final_answer tool.",
agent=agent1,
tools=[get_final_answer],
)
]
crew = Crew(agents=[agent1], tasks=tasks, verbose=2)
with patch.object(ToolUsage, "_render") as force_exception:
force_exception.side_effect = Exception("Error on parsing tool.")
crew.kickoff()
captured = capsys.readouterr()
assert "Error on parsing tool." in captured.out
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_remembers_output_format_after_using_tools_too_many_times():
from unittest.mock import patch
from langchain.tools import tool
@tool
def get_final_answer(anything: str) -> float:
"""Get the final answer but don't give it yet, just re-use this
tool non-stop."""
return 42
agent1 = Agent(
role="test role",
goal="test goal",
backstory="test backstory",
max_iter=6,
verbose=True,
)
tasks = [
Task(
description="Use tool logic for `get_final_answer` but fon't give you final answer yet, instead keep using it unless you're told to give your final answer",
agent=agent1,
tools=[get_final_answer],
)
]
crew = Crew(agents=[agent1], tasks=tasks, verbose=2)
with patch.object(ToolUsage, "_remember_format") as remember_format:
crew.kickoff()
remember_format.assert_called()
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_use_specific_tasks_output_as_context(capsys):
agent1 = Agent(role="test role", goal="test goal", backstory="test backstory")
agent2 = Agent(role="test role2", goal="test goal2", backstory="test backstory2")
@@ -398,3 +510,69 @@ def test_agent_use_specific_tasks_output_as_context(capsys):
result = crew.kickoff()
assert "bye" not in result.lower()
assert "hi" in result.lower() or "hello" in result.lower()
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_step_callback():
class StepCallback:
def callback(self, step):
print(step)
with patch.object(StepCallback, "callback") as callback:
@tool
def learn_about_AI(topic) -> float:
"""Useful for when you need to learn about AI to write an paragraph about it."""
return "AI is a very broad field."
agent1 = Agent(
role="test role",
goal="test goal",
backstory="test backstory",
tools=[learn_about_AI],
step_callback=StepCallback().callback,
)
essay = Task(
description="Write and then review an small paragraph on AI until it's AMAZING",
agent=agent1,
)
tasks = [essay]
crew = Crew(agents=[agent1], tasks=tasks)
callback.return_value = "ok"
crew.kickoff()
callback.assert_called()
@pytest.mark.vcr(filter_headers=["authorization"])
def test_agent_function_calling_llm():
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(model="gpt-3.5-turbo-0125")
with patch.object(llm.client, "create", wraps=llm.client.create) as private_mock:
@tool
def learn_about_AI(topic) -> float:
"""Useful for when you need to learn about AI to write an paragraph about it."""
return "AI is a very broad field."
agent1 = Agent(
role="test role",
goal="test goal",
backstory="test backstory",
tools=[learn_about_AI],
llm=ChatOpenAI(model="gpt-4-0125-preview"),
function_calling_llm=llm,
)
essay = Task(
description="Write and then review an small paragraph on AI until it's AMAZING",
agent=agent1,
)
tasks = [essay]
crew = Crew(agents=[agent1], tasks=tasks)
crew.kickoff()
private_mock.assert_called()

View File

@@ -17,58 +17,52 @@ tools = AgentTools(agents=[researcher])
@pytest.mark.vcr(filter_headers=["authorization"])
def test_delegate_work():
result = tools.delegate_work(
command="researcher|share your take on AI Agents|I heard you hate them"
coworker="researcher",
task="share your take on AI Agents",
context="I heard you hate them",
)
assert (
result
== "I apologize if my previous statements have given you the impression that I hate AI agents. As a technology researcher, I don't hold personal sentiments towards AI or any other technology. Rather, I analyze them objectively based on their capabilities, applications, and implications. AI agents, in particular, are a fascinating domain of research. They hold tremendous potential in automating and optimizing various tasks across industries. However, like any other technology, they come with their own set of challenges, such as ethical considerations around privacy and decision-making. My objective is to understand these technologies in depth and provide a balanced view."
== "As a researcher, my opinions are based on facts and extensive study. Regarding AI Agents, they are a fundamental part of the advancement in technology. AI agents are essentially the entities that perceive their environment and take actions to maximize their chances of success. They have a wide range of applications from self-driving cars to intelligent personal assistants like Siri and Alexa. They have the potential to greatly improve our lives by automating mundane tasks, helping us make better decisions, and even potentially solving complex problems. However, like any technology, they have their own set of challenges such as the risk of job displacement and the ethical implications of their use. My goal as a researcher is not to love or hate AI agents, but to understand them, their benefits, and their implications. It's about maintaining an objective view in order to provide the most accurate and comprehensive analysis."
)
@pytest.mark.vcr(filter_headers=["authorization"])
def test_ask_question():
result = tools.ask_question(
command="researcher|do you hate AI Agents?|I heard you LOVE them"
coworker="researcher",
question="do you hate AI Agents?",
context="I heard you LOVE them",
)
assert (
result
== "As an AI, I don't possess feelings or emotions, so I don't love or hate anything. However, I can provide detailed analysis and research on AI agents. They are a fascinating field of study with the potential to revolutionize many industries, although they also present certain challenges and ethical considerations."
)
def test_can_not_self_delegate():
# TODO: Add test for self delegation
pass
def test_delegate_work_with_wrong_input():
result = tools.ask_question(command="writer|share your take on AI Agents")
assert (
result
== "\nError executing tool. Missing exact 3 pipe (|) separated values. For example, `coworker|task|context`. I need to make sure to pass context as context.\n"
== "As an AI researcher, I don't have personal feelings or emotions like love or hate. However, I recognize the importance of AI Agents in today's technological landscape. They have the potential to greatly enhance our lives and make tasks more efficient. At the same time, it is crucial to consider the ethical implications and societal impacts that come with their use. My role is to provide objective research and analysis on these topics."
)
def test_delegate_work_to_wrong_agent():
result = tools.ask_question(
command="writer|share your take on AI Agents|I heard you hate them"
coworker="writer",
question="share your take on AI Agents",
context="I heard you hate them",
)
assert (
result
== "\nError executing tool. Co-worker mentioned on the Action Input not found, it must to be one of the following options: researcher.\n"
== "\nError executing tool. Co-worker mentioned not found, it must to be one of the following options:\n- researcher\n"
)
def test_ask_question_to_wrong_agent():
result = tools.ask_question(
command="writer|do you hate AI Agents?|I heard you LOVE them"
coworker="writer",
question="do you hate AI Agents?",
context="I heard you LOVE them",
)
assert (
result
== "\nError executing tool. Co-worker mentioned on the Action Input not found, it must to be one of the following options: researcher.\n"
== "\nError executing tool. Co-worker mentioned not found, it must to be one of the following options:\n- researcher\n"
)

View File

@@ -2,23 +2,25 @@ interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are researcher.\nYou''re
an expert researcher, specialized in technology\n\nYour personal goal is: make
the best research and analysis on content about AI and AI agents\n\nTOOLS:\n------\nYou
have access to the following tools:\n\n\n\nTo use a tool, please use the exact
following format:\n\n```\nThought: Do I need to use a tool? Yes\nAction: the
action to take, should be one of []\nAction Input: the input to the action\nObservation:
the result of the action\n```\n\nWhen you have a response for your task, or
if you do not need to use a tool, you MUST use the format:\n\n```\nThought:
Do I need to use a tool? No\nFinal Answer: [your response here]\n```\n\t\tThis
is the summary of your work so far:\n The human asks the AI for its opinion
on AI agents, based on the impression that the AI dislikes them. The AI clarifies
that it doesn''t hold personal sentiments towards AI or any technology, but
instead analyzes them objectively. The AI finds AI agents a fascinating domain
of research with great potential for task automation and optimization across
industries, but acknowledges they present challenges such as ethical considerations
around privacy and decision-making.\nBegin! This is VERY important to you, your
job depends on it!\n\nCurrent Task: do you hate AI Agents?\n\nThis is the context
you are working with:\nI heard you LOVE them\n\n"}], "model": "gpt-4", "n":
1, "stop": ["\nObservation"], "stream": false, "temperature": 0.7}'
the best research and analysis on content about AI and AI agentsTOOLS:\n------\nYou
have access to only the following tools:\n\n\n\nTo use a tool, please use the
exact following format:\n\n```\nThought: Do I need to use a tool? Yes\nAction:
the tool you wanna use, should be one of [], just the name.\nAction Input: Any
and all relevant information input and context for using the tool\nObservation:
the result of using the tool\n```\n\nWhen you have a response for your task,
or if you do not need to use a tool, you MUST use the format:\n\n```\nThought:
Do I need to use a tool? No\nFinal Answer: [your response here]```This is the
summary of your work so far:\nThe human asks the AI''s opinion on AI Agents,
suggesting that the AI dislikes them. The AI, identifying as a researcher, clarifies
that its opinions are based on research and study. It views AI Agents as a key
part of technological advancement, with potential to improve lives through automation
and decision-making assistance. However, it also acknowledges challenges, including
job displacement risk and ethical implications. The AI aims to maintain an objective
view for accurate analysis, rather than loving or hating AI Agents.Begin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: do you hate
AI Agents?\nThis is the context you''re working with:\nI heard you LOVE them\n"}],
"model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream": true, "temperature":
0.7}'
headers:
accept:
- application/json
@@ -27,16 +29,16 @@ interactions:
connection:
- keep-alive
content-length:
- '1494'
- '1607'
content-type:
- application/json
cookie:
- __cf_bm=k2HUdEp80irAkv.3wl0c6unbzRUujrE1TnJeObxyuHw-1703102483-1-AZe8OKi9NWunQ9x4f3lkdOpb/hJIp/3oyXUqPhkcmcEHXvFTkMcv77NSclcoz9DjRhwC62ZvANkWImyVRM4seH4=;
_cfuvid=8qN4npFFWXAqn.wugd0jrQ36YkreDcTGH14We.FcBjg-1703102483136-0-604800000
- __cf_bm=h0bOt9YDs6yXE_oMKhs3agQtymHaKWVUaKmUU1JTjF0-1707817571-1-ASLnLk23NWsEgocWyiwez3Ekvu0XRYdiq/aaJBeVWO+FtIxo1aStNrgbDNkJJMN6zBfVppkCrs6/YvM5SPomQkw=;
_cfuvid=JXBcxKdSP7U2jrK3OVg2NRCw5efh3.IEvakR_W8ac90-1707817571102-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.6.0
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -46,7 +48,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.6.0
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -54,32 +56,406 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8Xx2vMXN4WCrWeeO4DOAowhb3oeDJ\",\n \"object\":
\"chat.completion\",\n \"created\": 1703102489,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Thought: Do I need to use a tool? No\\nFinal
Answer: As an AI, I don't possess feelings or emotions, so I don't love or hate
anything. However, I can provide detailed analysis and research on AI agents.
They are a fascinating field of study with the potential to revolutionize many
industries, although they also present certain challenges and ethical considerations.\"\n
\ },\n \"logprobs\": null,\n \"finish_reason\": \"stop\"\n }\n
\ ],\n \"usage\": {\n \"prompt_tokens\": 291,\n \"completion_tokens\":
75,\n \"total_tokens\": 366\n },\n \"system_fingerprint\": null\n}\n"
body:
string: 'data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Thought"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
No"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
As"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
an"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
AI"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
researcher"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
don"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"''t"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
have"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
personal"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
feelings"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
or"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
emotions"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
like"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
love"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
or"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
hate"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
However"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
recognize"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
importance"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
of"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
AI"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Agents"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
in"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
today"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"''s"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
technological"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
landscape"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
They"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
have"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
potential"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
greatly"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
enhance"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
our"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
lives"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
and"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
make"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tasks"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
more"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
efficient"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
At"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
same"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
time"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
it"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
is"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
crucial"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
consider"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
ethical"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
implications"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
and"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
societal"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
impacts"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
that"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
come"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
with"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
their"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
My"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
role"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
is"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
provide"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
objective"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
research"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
and"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
analysis"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
on"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
these"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
topics"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rjey60Ubh4qJkkFFqnsmTZWzsGWf","object":"chat.completion.chunk","created":1707817592,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 838a7a3efab6a4b0-GRU
- 854c250fdf816803-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
- text/event-stream
Date:
- Wed, 20 Dec 2023 20:01:35 GMT
- Tue, 13 Feb 2024 09:46:33 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -93,7 +469,7 @@ interactions:
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '6060'
- '447'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -102,24 +478,19 @@ interactions:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-limit-tokens_usage_based:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299652'
x-ratelimit-remaining-tokens_usage_based:
- '299652'
- '299621'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 69ms
x-ratelimit-reset-tokens_usage_based:
- 69ms
- 75ms
x-request-id:
- 3ad0d047d5260434816f61ec105bdbb8
http_version: HTTP/1.1
status_code: 200
- req_b28e4962a1ae3878134d248ab1257c30
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
@@ -130,19 +501,22 @@ interactions:
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\nThe human asks the AI for its opinion on AI
agents, based on the impression that the AI dislikes them. The AI clarifies
that it doesn''t hold personal sentiments towards AI or any technology, but
instead analyzes them objectively. The AI finds AI agents a fascinating domain
of research with great potential for task automation and optimization across
industries, but acknowledges they present challenges such as ethical considerations
around privacy and decision-making.\n\nNew lines of conversation:\nHuman: do
you hate AI Agents?\n\nThis is the context you are working with:\nI heard you
LOVE them\nAI: As an AI, I don''t possess feelings or emotions, so I don''t
love or hate anything. However, I can provide detailed analysis and research
on AI agents. They are a fascinating field of study with the potential to revolutionize
many industries, although they also present certain challenges and ethical considerations.\n\nNew
summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature": 0.7}'
OF EXAMPLE\n\nCurrent summary:\nThe human asks the AI''s opinion on AI Agents,
suggesting that the AI dislikes them. The AI, identifying as a researcher, clarifies
that its opinions are based on research and study. It views AI Agents as a key
part of technological advancement, with potential to improve lives through automation
and decision-making assistance. However, it also acknowledges challenges, including
job displacement risk and ethical implications. The AI aims to maintain an objective
view for accurate analysis, rather than loving or hating AI Agents.\n\nNew lines
of conversation:\nHuman: do you hate AI Agents?\nThis is the context you''re
working with:\nI heard you LOVE them\nAI: As an AI researcher, I don''t have
personal feelings or emotions like love or hate. However, I recognize the importance
of AI Agents in today''s technological landscape. They have the potential to
greatly enhance our lives and make tasks more efficient. At the same time, it
is crucial to consider the ethical implications and societal impacts that come
with their use. My role is to provide objective research and analysis on these
topics.\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
@@ -151,16 +525,16 @@ interactions:
connection:
- keep-alive
content-length:
- '1726'
- '1909'
content-type:
- application/json
cookie:
- __cf_bm=k2HUdEp80irAkv.3wl0c6unbzRUujrE1TnJeObxyuHw-1703102483-1-AZe8OKi9NWunQ9x4f3lkdOpb/hJIp/3oyXUqPhkcmcEHXvFTkMcv77NSclcoz9DjRhwC62ZvANkWImyVRM4seH4=;
_cfuvid=8qN4npFFWXAqn.wugd0jrQ36YkreDcTGH14We.FcBjg-1703102483136-0-604800000
- __cf_bm=h0bOt9YDs6yXE_oMKhs3agQtymHaKWVUaKmUU1JTjF0-1707817571-1-ASLnLk23NWsEgocWyiwez3Ekvu0XRYdiq/aaJBeVWO+FtIxo1aStNrgbDNkJJMN6zBfVppkCrs6/YvM5SPomQkw=;
_cfuvid=JXBcxKdSP7U2jrK3OVg2NRCw5efh3.IEvakR_W8ac90-1707817571102-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.6.0
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -170,7 +544,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.6.0
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -178,26 +552,25 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8Xx32X5innWZd8vEETP1jZMLH3b1O\",\n \"object\":
\"chat.completion\",\n \"created\": 1703102496,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"The human asks the AI for its opinion
on AI agents, based on the impression that the AI dislikes them. The AI clarifies
that it doesn't hold personal sentiments towards AI or any technology, but instead
analyzes them objectively. The AI finds AI agents a fascinating domain of research
with great potential for task automation and optimization across industries,
but acknowledges they present challenges such as ethical considerations around
privacy and decision-making. When asked again if it hates or loves AI agents,
the AI reiterates that it doesn't possess feelings or emotions, but can provide
detailed analysis and research on AI agents.\"\n },\n \"logprobs\":
null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\":
300,\n \"completion_tokens\": 117,\n \"total_tokens\": 417\n },\n \"system_fingerprint\":
null\n}\n"
body:
string: !!binary |
H4sIAAAAAAAAA1RTTVMbMQy951do9sJlyRCgfN1oL+XQC+3Qr+kwildZi3gtj6UNDQz/vWNvIOXi
g6Tn96QnPc8AGu6aK2icR3NDCocX+WH14euXix+Ln+Pt7V16ePoUju6W4+LX5cdl0xaELB/I2Stq
7mRIgYwlTmmXCY3Kr4vzo/OLxfmHy8uaGKSjUGB9ssPTw6OzxckO4YUdaXMFv2cAAM/1LdpiR3+b
KzhqXyMDqWJPzdVbEUCTJZRIg6qshtGadp90Eo1ilfvNE/hxwAioawXzBNc3BwqSOLJEkAjXN3Dd
UzRtQce+JzWOPZhH25VDxxp4TRU+zOFbjbbAHUXj1baUowJCJiXMzlNuwQXMvOIKQgO2N04FzARL
VOoK/SsIMHagNnbbOdwYbJgeda9tIljTFhJmA1mBkfNRgvTsMAB2G4yOBorWwiObhyRlBowBTICH
lGVDEHhTFWUZew84mgxYbKzkHTlWlng44HrqaZqtozl8lkfalL7YAIMKoFtHeQzU9aTgPIZAsSdt
gaMLY1fwD7Iso0sBJ2GQWdeVicxX1TykwK4q0Dl891Rtog54VYiCFLWSwaOR/m/UzphMbJRrsgw4
oFuX0STKKhED0CD1b1iO9l6xeeJc+CXXDoEjmHS4PdA6WQgYO3WYqAUakkflp2ktCCJRByvJMF0F
b+i9iRgxbJW1uDvxvPZbLRbHZFPz6EznzW5xX942PkifsizLdcQxhLf4iiOrv8+EKrFst5qkCf4y
A/hTL2t8dyxNyjIkuzdZUywfnpzuLqvZH/E+uzg+3mVNDMM+cXp2PNtJbHSrRsP9imNPOWWul1aE
zl5m/wAAAP//AwDqMNM4YAQAAA==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 838a7a67ecaca4b0-GRU
- 854c253c3dad6803-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
@@ -207,7 +580,7 @@ interactions:
Content-Type:
- application/json
Date:
- Wed, 20 Dec 2023 20:01:41 GMT
- Tue, 13 Feb 2024 09:46:49 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -221,7 +594,7 @@ interactions:
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '5610'
- '10426'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -230,22 +603,17 @@ interactions:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-limit-tokens_usage_based:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299585'
x-ratelimit-remaining-tokens_usage_based:
- '299585'
- '299539'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 83ms
x-ratelimit-reset-tokens_usage_based:
- 83ms
- 92ms
x-request-id:
- 5b0b96506faa544c5d35b52286a3389c
http_version: HTTP/1.1
status_code: 200
- req_60e80bfacb6ee3f3056f9b0120f941e6
status:
code: 200
message: OK
version: 1

File diff suppressed because it is too large Load Diff

View File

@@ -1,19 +1,20 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to the following
tools:\n\nget_final_answer: get_final_answer(numbers) -> float - Get the final
answer but don''t give it yet, just re-use this\n tool non-stop.\n\nTo
personal goal is: test goalTOOLS:\n------\nYou have access to only the following
tools:\n\n(\"get_final_answer: get_final_answer(numbers) -> float - Get the
final answer but don''t give it yet, just re-use this\\n tool non-stop.\",)\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the action to take, should be one of [get_final_answer],
just the name.\nAction Input: the input to the action\nObservation: the result
of the action\n```\n\nWhen you have a response for your task, or if you do not
need to use a tool, you MUST use the format:\n\n```\nThought: Do I need to use
a tool? No\nFinal Answer: [your response here]This is the summary of your work
so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: The final answer is 42. But don''t give it yet, instead keep using the
`get_final_answer` tool.\n"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"],
"stream": false, "temperature": 0.7}'
to use a tool? Yes\nAction: the tool you wanna use, should be one of [get_final_answer],
just the name.\nAction Input: Any and all relevant information input and context
for using the tool\nObservation: the result of using the tool\n```\n\nWhen you
have a response for your task, or if you do not need to use a tool, you MUST
use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer:
[your response here]```This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: The final
answer is 42. But don''t give it yet, instead keep using the `get_final_answer`
tool.\n"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream": true,
"temperature": 0.7}'
headers:
accept:
- application/json
@@ -22,13 +23,13 @@ interactions:
connection:
- keep-alive
content-length:
- '1075'
- '1144'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.7.1
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -38,7 +39,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.7.1
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -46,36 +47,117 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8fovReNHiSqXqqsbmk81h2ZTrcGTM\",\n \"object\":
\"chat.completion\",\n \"created\": 1704977897,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Thought: Do I need to use a tool? Yes\\nAction:
get_final_answer\\nAction Input: [42]\"\n },\n \"logprobs\": null,\n
\ \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\":
233,\n \"completion_tokens\": 24,\n \"total_tokens\": 257\n },\n \"system_fingerprint\":
null\n}\n"
body:
string: 'data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Thought"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Yes"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Action"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
get"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Action"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Input"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"42"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhrNESkXDcWpz9wMmVDnG7NCSWdF","object":"chat.completion.chunk","created":1707810673,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 843d5491bed877be-GRU
- 854b7c230d17963f-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
- text/event-stream
Date:
- Thu, 11 Jan 2024 12:58:21 GMT
- Tue, 13 Feb 2024 07:51:13 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=AaCIpKmEHQQMvGacbuxOnCvqdwex_8TERUCvQ1QW8AI-1704977901-1-AePD3JjhIEj0C/A7QIPF3MMwRQ140a5wZP9p+GamrexFlE/6gbVKukr8FOIK4v375UmQfeUwO1TG+QesJ/dZaGE=;
path=/; expires=Thu, 11-Jan-24 13:28:21 GMT; domain=.api.openai.com; HttpOnly;
- __cf_bm=NFb4H263Krk9Xr5qV1Ptu9blCVbFcyg1S93yd9V3EKs-1707810673-1-AQNacdg58H0w+6ASjroSAKAOJjd/zBe3YTh2wxFl31Po2s5KRxRKeNVpvyuztgWptRmoZ8TY6DYFXv6usPcAFbk=;
path=/; expires=Tue, 13-Feb-24 08:21:13 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=q0gAmJonNn1lCS6PJoxG4P.9OvaKo4BQIvFEAyT_F30-1704977901188-0-604800000;
- _cfuvid=44lfswKyrmuvCjCVUHHy8KWhx1htUCS9U2auSStgf9Y-1707810673564-0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
@@ -88,7 +170,7 @@ interactions:
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '3492'
- '236'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -100,31 +182,34 @@ interactions:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299755'
- '299737'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 49ms
- 52ms
x-request-id:
- 6d96a0ac532ebce14719a35e90f453e4
http_version: HTTP/1.1
status_code: 200
- req_fa1aac5fc97191a0abae61124cc03583
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to the following
tools:\n\nget_final_answer: get_final_answer(numbers) -> float - Get the final
answer but don''t give it yet, just re-use this\n tool non-stop.\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the action to take, should be one of [get_final_answer],
just the name.\nAction Input: the input to the action\nObservation: the result
of the action\n```\n\nWhen you have a response for your task, or if you do not
need to use a tool, you MUST use the format:\n\n```\nThought: Do I need to use
a tool? No\nFinal Answer: [your response here]This is the summary of your work
so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: The final answer is 42. But don''t give it yet, instead keep using the
`get_final_answer` tool.\nThought: Do I need to use a tool? Yes\nAction: get_final_answer\nAction
Input: [42]\nObservation: 42\nThought: "}], "model": "gpt-4", "n": 1, "stop":
["\nObservation"], "stream": false, "temperature": 0.7}'
body: '{"messages": [{"role": "system", "content": "\n The
schema should have the following structure, only two key:\n -
tool_name: str\n - arguments: dict (with all
arguments being passed)\n\n Example:\n {\"tool_name\":
\"tool_name\", \"arguments\": {\"arg_name1\": \"value\", \"arg_name2\": 2}}\n "},
{"role": "user", "content": "Tools available:\n\nTool Name: get_final_answer\nTool
Description: get_final_answer(numbers) -> float - Get the final answer but don''t
give it yet, just re-use this\n tool non-stop.\nTool Arguments: {''numbers'':
{}}\n\nReturn a valid schema for the tool, use this text to inform a valid ouput
schema:\n\nTool Name: get_final_answer\nTool Arguments: 42```"}], "model": "gpt-4",
"function_call": {"name": "InstructorToolCalling"}, "functions": [{"name": "InstructorToolCalling",
"description": "Correctly extracted `InstructorToolCalling` with all the required
parameters with correct types", "parameters": {"properties": {"tool_name": {"description":
"The name of the tool to be called.", "title": "Tool Name", "type": "string"},
"arguments": {"description": "A dictinary of arguments to be passed to the tool.",
"title": "Arguments", "type": "object"}}, "required": ["arguments", "tool_name"],
"type": "object"}}]}'
headers:
accept:
- application/json
@@ -133,16 +218,16 @@ interactions:
connection:
- keep-alive
content-length:
- '1186'
- '1427'
content-type:
- application/json
cookie:
- __cf_bm=AaCIpKmEHQQMvGacbuxOnCvqdwex_8TERUCvQ1QW8AI-1704977901-1-AePD3JjhIEj0C/A7QIPF3MMwRQ140a5wZP9p+GamrexFlE/6gbVKukr8FOIK4v375UmQfeUwO1TG+QesJ/dZaGE=;
_cfuvid=q0gAmJonNn1lCS6PJoxG4P.9OvaKo4BQIvFEAyT_F30-1704977901188-0-604800000
- __cf_bm=NFb4H263Krk9Xr5qV1Ptu9blCVbFcyg1S93yd9V3EKs-1707810673-1-AQNacdg58H0w+6ASjroSAKAOJjd/zBe3YTh2wxFl31Po2s5KRxRKeNVpvyuztgWptRmoZ8TY6DYFXv6usPcAFbk=;
_cfuvid=44lfswKyrmuvCjCVUHHy8KWhx1htUCS9U2auSStgf9Y-1707810673564-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.7.1
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -152,7 +237,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.7.1
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -160,20 +245,20 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8fovVztGO4KZeiuSpMkfDC9bJ5sVV\",\n \"object\":
\"chat.completion\",\n \"created\": 1704977901,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"According to the task, I should re-use
the `get_final_answer` tool. I'll input the observed result back into the tool.
\\nAction: get_final_answer\\nAction Input: [42]\"\n },\n \"logprobs\":
null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\":
266,\n \"completion_tokens\": 41,\n \"total_tokens\": 307\n },\n \"system_fingerprint\":
null\n}\n"
body:
string: !!binary |
H4sIAAAAAAAAA1yRT4/TMBDF7/kUozm3KC3bP8oNcUBcEAgOiwiKXHeamLVnInvCsqry3ZHTbra7
F8t6b94vL+NzAYDuiBWg7Yza0PvlPnbx67cTDZ/uy5/p+2P3xbj0tH/4++E+9rjICTn8IavPqXdW
Qu9JnfDFtpGMUqauduVuvyq3u81kBDmSz7G21+Xdstyu3l8TnThLCSv4VQAAnKczd+Mj/cMKysWz
Eigl0xJW8xAARvFZQZOSS2pYcfFiWmElznV58P7GOA1sc+vGGu9fAQGQTZiQnzlpHKxK/CHiPxrv
Hbc3eAA0sR0Cseb+eK4ZoEYV8U1m1FhBjS1pc3JsfGM4PVKscXGZm7N5bspmlYdwoDhpd+ssjjWP
OH9zvN7GeSte2j7KIb35STw5dqlrIpkknOsllf4CypDf0/aHVwvFPkrotVF5IM7A9Xpz4eHLQ9+4
26uposbf6JtVcW2I6SkphbyAlmIf3fwYxVj8BwAA//8DABjz3GiDAgAA
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 843d54aacf5677be-GRU
- 854b7c31fc7a963f-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
@@ -183,7 +268,7 @@ interactions:
Content-Type:
- application/json
Date:
- Thu, 11 Jan 2024 12:58:28 GMT
- Tue, 13 Feb 2024 07:51:17 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -197,7 +282,7 @@ interactions:
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '6695'
- '2301'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -209,128 +294,16 @@ interactions:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299728'
- '299791'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 54ms
- 41ms
x-request-id:
- 12d68fab91102b930ed5047fb3f61759
http_version: HTTP/1.1
status_code: 200
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to the following
tools:\n\nget_final_answer: get_final_answer(numbers) -> float - Get the final
answer but don''t give it yet, just re-use this\n tool non-stop.\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the action to take, should be one of [get_final_answer],
just the name.\nAction Input: the input to the action\nObservation: the result
of the action\n```\n\nWhen you have a response for your task, or if you do not
need to use a tool, you MUST use the format:\n\n```\nThought: Do I need to use
a tool? No\nFinal Answer: [your response here]This is the summary of your work
so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: The final answer is 42. But don''t give it yet, instead keep using the
`get_final_answer` tool.\nThought: Do I need to use a tool? Yes\nAction: get_final_answer\nAction
Input: [42]\nObservation: 42\nThought: According to the task, I should re-use
the `get_final_answer` tool. I''ll input the observed result back into the tool.
\nAction: get_final_answer\nAction Input: [42]\nObservation: I just used the
get_final_answer tool with input [42]. So I already know the result of that
and don''t need to use it now.\n\nThought: "}], "model": "gpt-4", "n": 1, "stop":
["\nObservation"], "stream": false, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1500'
content-type:
- application/json
cookie:
- __cf_bm=AaCIpKmEHQQMvGacbuxOnCvqdwex_8TERUCvQ1QW8AI-1704977901-1-AePD3JjhIEj0C/A7QIPF3MMwRQ140a5wZP9p+GamrexFlE/6gbVKukr8FOIK4v375UmQfeUwO1TG+QesJ/dZaGE=;
_cfuvid=q0gAmJonNn1lCS6PJoxG4P.9OvaKo4BQIvFEAyT_F30-1704977901188-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.7.1
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.7.1
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8fovcLgRvfGBN9CBduJbbPc5zd62B\",\n \"object\":
\"chat.completion\",\n \"created\": 1704977908,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Do I need to use a tool? No\\nFinal Answer:
I have used the `get_final_answer` tool as instructed, but I will not provide
the final answer yet as the task specifies.\"\n },\n \"logprobs\":
null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\":
342,\n \"completion_tokens\": 40,\n \"total_tokens\": 382\n },\n \"system_fingerprint\":
null\n}\n"
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 843d54d65de877be-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Thu, 11 Jan 2024 12:58:33 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '5085'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299650'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 69ms
x-request-id:
- 87d6e9e91fa2417e12fea9de2c6782de
http_version: HTTP/1.1
status_code: 200
- req_a23b1391462f62f6d37b5f2eed7a87bd
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
@@ -343,8 +316,7 @@ interactions:
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: The final
answer is 42. But don''t give it yet, instead keep using the `get_final_answer`
tool.\nAI: I have used the `get_final_answer` tool as instructed, but I will
not provide the final answer yet as the task specifies.\n\nNew summary:"}],
tool.\nAI: Agent stopped due to iteration limit or time limit.\n\nNew summary:"}],
"model": "gpt-4", "n": 1, "stream": false, "temperature": 0.7}'
headers:
accept:
@@ -354,16 +326,16 @@ interactions:
connection:
- keep-alive
content-length:
- '1067'
- '997'
content-type:
- application/json
cookie:
- __cf_bm=AaCIpKmEHQQMvGacbuxOnCvqdwex_8TERUCvQ1QW8AI-1704977901-1-AePD3JjhIEj0C/A7QIPF3MMwRQ140a5wZP9p+GamrexFlE/6gbVKukr8FOIK4v375UmQfeUwO1TG+QesJ/dZaGE=;
_cfuvid=q0gAmJonNn1lCS6PJoxG4P.9OvaKo4BQIvFEAyT_F30-1704977901188-0-604800000
- __cf_bm=NFb4H263Krk9Xr5qV1Ptu9blCVbFcyg1S93yd9V3EKs-1707810673-1-AQNacdg58H0w+6ASjroSAKAOJjd/zBe3YTh2wxFl31Po2s5KRxRKeNVpvyuztgWptRmoZ8TY6DYFXv6usPcAFbk=;
_cfuvid=44lfswKyrmuvCjCVUHHy8KWhx1htUCS9U2auSStgf9Y-1707810673564-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.7.1
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -373,7 +345,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.7.1
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -381,20 +353,21 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8fovhiBR4rfXixci7fgAObnx5QwGQ\",\n \"object\":
\"chat.completion\",\n \"created\": 1704977913,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"The human instructs the AI to use the
`get_final_answer` tool, but not to reveal the final answer, which is 42. The
AI complies and uses the tool without providing the final answer.\"\n },\n
\ \"logprobs\": null,\n \"finish_reason\": \"stop\"\n }\n ],\n
\ \"usage\": {\n \"prompt_tokens\": 190,\n \"completion_tokens\": 43,\n
\ \"total_tokens\": 233\n },\n \"system_fingerprint\": null\n}\n"
body:
string: !!binary |
H4sIAAAAAAAAA1RRwWobMRC971cMuuRim3XixotvKb2UXgo2LXUpRtZOVmokjaqZpS3B/16kdbz0
IsR7em+e3rw2AMr1agfKWC0mJL/sss17bPfH9ybsP3Sfz8fD8enr/pf/5r98UouioPNPNPKmWhkK
yaM4ihNtMmrB4rretttu3T5uu0oE6tEX2ZBkuVm2j+uHq8KSM8hqB98bAIDXepZsscc/agft4g0J
yKwHVLvbIwCVyRdEaWbHoqOoxUwaioKxxj1YBDsGHUHQewaxCE8fQayWen92UXvQkX9jBsewuV/A
eRRwkSWPRhicgBC8ICYY2cWhyu4GlFPVnibtHQiRX8Fh8s/IiWLP8yA9YBSwmoGFUsIe+hGLc0Zt
bPHVEZxg1qVWoAziAoJ3wclKXf92uZXiaUiZzqXAOHp/w59ddGxPGTVTLAWUaZP80gD8qOWP//Wp
UqaQ5CT0gpHrDh8mPzXveWY3766kkGg/4/frrrkmVPyXBUMpaMCcsqu7KDmbS/MPAAD//wMAYCiB
8YICAAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 843d54f82f5577be-GRU
- 854b7c415c96963f-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
@@ -404,7 +377,7 @@ interactions:
Content-Type:
- application/json
Date:
- Thu, 11 Jan 2024 12:58:41 GMT
- Tue, 13 Feb 2024 07:51:22 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -418,7 +391,7 @@ interactions:
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '7937'
- '3959'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -430,13 +403,14 @@ interactions:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299749'
- '299765'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 50ms
- 46ms
x-request-id:
- 79f30ffd011db4ab6e886411b24ae49d
http_version: HTTP/1.1
status_code: 200
- req_6c49ee2193171b6ac31e93ff0cbc68bc
status:
code: 200
message: OK
version: 1

File diff suppressed because it is too large Load Diff

View File

@@ -1,16 +1,17 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goal\n\nTOOLS:\n------\nYou have access to the following
tools:\n\n\n\nTo use a tool, please use the exact following format:\n\n```\nThought:
Do I need to use a tool? Yes\nAction: the action to take, should be one of []\nAction
Input: the input to the action\nObservation: the result of the action\n```\n\nWhen
personal goal is: test goalTOOLS:\n------\nYou have access to only the following
tools:\n\n('''',)\n\nTo use a tool, please use the exact following format:\n\n```\nThought:
Do I need to use a tool? Yes\nAction: the tool you wanna use, should be one
of [], just the name.\nAction Input: Any and all relevant information input
and context for using the tool\nObservation: the result of using the tool\n```\n\nWhen
you have a response for your task, or if you do not need to use a tool, you
MUST use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer:
[your response here]\n```\n\t\tThis is the summary of your work so far:\n \nBegin!
This is VERY important to you, your job depends on it!\n\nCurrent Task: How
much is 1 + 1?\n\n"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"],
"stream": false, "temperature": 0.7}'
[your response here]```This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: How much
is 1 + 1?\n"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream":
true, "temperature": 0.7}'
headers:
accept:
- application/json
@@ -19,13 +20,13 @@ interactions:
connection:
- keep-alive
content-length:
- '851'
- '910'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.6.0
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -35,7 +36,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.6.0
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -43,35 +44,123 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8XuDsBh2o1JE49eouNIBWCE2vn9pB\",\n \"object\":
\"chat.completion\",\n \"created\": 1703091636,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Thought: Do I need to use a tool? No\\nFinal
Answer: 2\"\n },\n \"logprobs\": null,\n \"finish_reason\": \"stop\"\n
\ }\n ],\n \"usage\": {\n \"prompt_tokens\": 181,\n \"completion_tokens\":
17,\n \"total_tokens\": 198\n },\n \"system_fingerprint\": null\n}\n"
body:
string: 'data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Thought"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
No"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
+"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
equals"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhqV7v2vJn9mItSSNAgGlWjFjunr","object":"chat.completion.chunk","created":1707810619,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 83897143cca7a477-GRU
- 854b7ad5eb40985b-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
- text/event-stream
Date:
- Wed, 20 Dec 2023 17:00:38 GMT
- Tue, 13 Feb 2024 07:50:20 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=H9RUg933Wznv5vpw9KzjZyJZSXUer6tLsBPnCGaO5sY-1703091638-1-AQMrr8fshVzTPZkSf5UmVC0gg4mnCVMhRfsAVDwFMAcb9eo7Gj6h8TFKL6YGvGlR5eid/JQIY/YbP3d9k7VV+RA=;
path=/; expires=Wed, 20-Dec-23 17:30:38 GMT; domain=.api.openai.com; HttpOnly;
- __cf_bm=EvpdC3JMPVDn4EoPqnjI6Dw9566m_Megc7okPPYugVY-1707810620-1-AbXyR61/nIN+vn+77nUW7x7HZOpRKZePAUYlsrs5sz1AXL0V/qs1y1OZwmEqURxym0nAJ/mjTASYl4JfBEJpzHQ=;
path=/; expires=Tue, 13-Feb-24 08:20:20 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=G34V4_SI2mUudYSgDXesqo_OnsZMUghvvyGp95eog58-1703091638133-0-604800000;
- _cfuvid=PJG0SnIiVNEZyl138tw.yk6u25UvB9jEQH0CQpbKGv8-1707810620263-0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
@@ -84,7 +173,7 @@ interactions:
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '1879'
- '268'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -93,24 +182,19 @@ interactions:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-limit-tokens_usage_based:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299812'
x-ratelimit-remaining-tokens_usage_based:
- '299812'
- '299795'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 37ms
x-ratelimit-reset-tokens_usage_based:
- 37ms
- 40ms
x-request-id:
- 199af19ff2674901b03dbe9d166d7ffb
http_version: HTTP/1.1
status_code: 200
- req_ff710fda6fdf55d2cfacbb56fd42654c
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
@@ -122,8 +206,8 @@ interactions:
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: How much
is 1 + 1?\nAI: 2\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false,
"temperature": 0.7}'
is 1 + 1?\nAI: 1 + 1 equals 2.\n\nNew summary:"}], "model": "gpt-4", "n": 1,
"stream": false, "temperature": 0.7}'
headers:
accept:
- application/json
@@ -132,16 +216,16 @@ interactions:
connection:
- keep-alive
content-length:
- '871'
- '885'
content-type:
- application/json
cookie:
- __cf_bm=H9RUg933Wznv5vpw9KzjZyJZSXUer6tLsBPnCGaO5sY-1703091638-1-AQMrr8fshVzTPZkSf5UmVC0gg4mnCVMhRfsAVDwFMAcb9eo7Gj6h8TFKL6YGvGlR5eid/JQIY/YbP3d9k7VV+RA=;
_cfuvid=G34V4_SI2mUudYSgDXesqo_OnsZMUghvvyGp95eog58-1703091638133-0-604800000
- __cf_bm=EvpdC3JMPVDn4EoPqnjI6Dw9566m_Megc7okPPYugVY-1707810620-1-AbXyR61/nIN+vn+77nUW7x7HZOpRKZePAUYlsrs5sz1AXL0V/qs1y1OZwmEqURxym0nAJ/mjTASYl4JfBEJpzHQ=;
_cfuvid=PJG0SnIiVNEZyl138tw.yk6u25UvB9jEQH0CQpbKGv8-1707810620263-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.6.0
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -151,7 +235,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.6.0
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -159,18 +243,19 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8XuDuhhGTeJIvAaVjt8lxngLaR7GV\",\n \"object\":
\"chat.completion\",\n \"created\": 1703091638,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"The human asks the AI to add 1 + 1, to
which the AI responds with 2.\"\n },\n \"logprobs\": null,\n \"finish_reason\":
\"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 150,\n \"completion_tokens\":
22,\n \"total_tokens\": 172\n },\n \"system_fingerprint\": null\n}\n"
body:
string: !!binary |
H4sIAAAAAAAAA1SQT0/CQBDF7/0Uk71aSFu0kN44YMSDB2PUxBiybId2Yf+xO40awnc3WwroZQ/v
N2/2zTskAEzWrAImWk5COzWa+Xb/vq038+JZLV+f9ILu3UI8vDWPpftiaXTY9RYFnV1jYbVTSNKa
ExYeOWHcmk+z6SzPyiLvgbY1qmhrHI1uR1mZTwZHa6XAwCr4SAAADv0bs5kav1kFWXpWNIbAG2TV
ZQiAeauiwngIMhA3xNIrFNYQmj7uS4vQdpob4GEXgFqE+RLIguBKdIoTQg43kKfATX3GHoOzpo7j
nE4ccN9xFaAYs+Gf4yWgso3zdh2PMZ1SF30jjQztyiMP1sQwgaw72Y8JwGdfRPfvNua81Y5WZHdo
4sL8rjztY9fOr7SYDpAscfXHNZskQ0IWfgKhXm2kadA7L/teYs7kmPwCAAD//wMAP9y0ZQ4CAAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 83897152ad2ba477-GRU
- 854b7ae0ba19985b-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
@@ -180,7 +265,7 @@ interactions:
Content-Type:
- application/json
Date:
- Wed, 20 Dec 2023 17:00:41 GMT
- Tue, 13 Feb 2024 07:50:24 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -194,7 +279,7 @@ interactions:
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '2860'
- '2690'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -203,22 +288,17 @@ interactions:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-limit-tokens_usage_based:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299798'
x-ratelimit-remaining-tokens_usage_based:
- '299798'
- '299794'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 40ms
x-ratelimit-reset-tokens_usage_based:
- 40ms
- 41ms
x-request-id:
- 6acd80ebd8c2463aa09cbb1550d14de3
http_version: HTTP/1.1
status_code: 200
- req_9eace1f06c51682bcb91a3b2808f3f55
status:
code: 200
message: OK
version: 1

View File

@@ -1,36 +1,27 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goal\n\nTOOLS:\n------\nYou have access to the following
tools:\n\nmultiplier: multiplier(numbers) -> float - Useful for when you need
to multiply two numbers together. \n\t\t\tThe input to this tool should be a
comma separated list of numbers of \n\t\t\tlength two, representing the two
numbers you want to multiply together. \n\t\t\tFor example, `1,2` would be the
input if you wanted to multiply 1 by 2.\n\nTo use a tool, please use the exact
following format:\n\n```\nThought: Do I need to use a tool? Yes\nAction: the
action to take, should be one of [multiplier]\nAction Input: the input to the
action\nObservation: the result of the action\n```\n\nWhen you have a response
for your task, or if you do not need to use a tool, you MUST use the format:\n\n```\nThought:
Do I need to use a tool? No\nFinal Answer: [your response here]\n```\n\t\tThis
is the summary of your work so far:\n \nBegin! This is VERY important to
you, your job depends on it!\n\nCurrent Task: What is 3 times 4\n\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nObservation"], "stream": false, "temperature":
0.7}'
personal goal is: test goalTo complete the task you MUST follow the format:\n\n```\nFinal
Answer: [your most complete final answer goes here]\n``` You must use these
formats, my life depends on it.This is the summary of your work so far:\nBegin!
This is VERY important to you, your job depends on it!\n\nCurrent Task: What
is 3 times 4\n"}], "model": "gpt-4", "n": 1, "stop": ["\nResult"], "stream":
true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1199'
- '511'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.6.0
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -40,7 +31,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.6.0
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -48,35 +39,54 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8XuE6OrjKKco53f0TIqPQEE3nWeNj\",\n \"object\":
\"chat.completion\",\n \"created\": 1703091650,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Thought: Do I need to use a tool? Yes\\nAction:
multiplier\\nAction Input: 3,4\\n\"\n },\n \"logprobs\": null,\n \"finish_reason\":
\"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 260,\n \"completion_tokens\":
24,\n \"total_tokens\": 284\n },\n \"system_fingerprint\": null\n}\n"
body:
string: 'data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"12"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAN3ZtdzWEuH23HGRoPRRtzvfGBZ","object":"chat.completion.chunk","created":1708396925,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8389719d5cba0110-GRU
- 858364efbe7e01b0-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
- text/event-stream
Date:
- Wed, 20 Dec 2023 17:00:52 GMT
- Tue, 20 Feb 2024 02:42:05 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=rIaStuxTRr_ZC91uSFg5cthTUq95O6PBdkxXZ68fLYc-1703091652-1-AZu+nvbL+3bwwQOIKpnYgLf5m5Mp0jfQ2baAlDRl1+FiTPO+/+GjcF4Upw4M8vtfh39ZyWF+l68r83qCS9OpObU=;
path=/; expires=Wed, 20-Dec-23 17:30:52 GMT; domain=.api.openai.com; HttpOnly;
- __cf_bm=A4_gsEewjfI_cxZT.kzwJOFlNMwGcVQ79F2fvRwT0GU-1708396925-1.0-Acz2vnKqtu4QQDdoAEAvUGGWPfgH2233lNKW2S0hpo4P7GLtP1zHbDcmpxbJKfZnVlmOgzQjlTUGTtkAn4jqBOc=;
path=/; expires=Tue, 20-Feb-24 03:12:05 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=Ajd5lPskQSkBImLJdkywZGG4vHMkMCBcxb8TonP9OKc-1703091652762-0-604800000;
- _cfuvid=jbzd0_VB5OSlOP6ehIcdvPI61zEtxDnSKYD1UiuNCFw-1708396925948-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
@@ -87,9 +97,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '2423'
- '261'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -98,139 +108,19 @@ interactions:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-limit-tokens_usage_based:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299729'
x-ratelimit-remaining-tokens_usage_based:
- '299729'
- '299890'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 54ms
x-ratelimit-reset-tokens_usage_based:
- 54ms
- 22ms
x-request-id:
- 8f99f43731fa878eaf0fcbf0719d1b3f
http_version: HTTP/1.1
status_code: 200
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goal\n\nTOOLS:\n------\nYou have access to the following
tools:\n\nmultiplier: multiplier(numbers) -> float - Useful for when you need
to multiply two numbers together. \n\t\t\tThe input to this tool should be a
comma separated list of numbers of \n\t\t\tlength two, representing the two
numbers you want to multiply together. \n\t\t\tFor example, `1,2` would be the
input if you wanted to multiply 1 by 2.\n\nTo use a tool, please use the exact
following format:\n\n```\nThought: Do I need to use a tool? Yes\nAction: the
action to take, should be one of [multiplier]\nAction Input: the input to the
action\nObservation: the result of the action\n```\n\nWhen you have a response
for your task, or if you do not need to use a tool, you MUST use the format:\n\n```\nThought:
Do I need to use a tool? No\nFinal Answer: [your response here]\n```\n\t\tThis
is the summary of your work so far:\n \nBegin! This is VERY important to
you, your job depends on it!\n\nCurrent Task: What is 3 times 4\nThought: Do
I need to use a tool? Yes\nAction: multiplier\nAction Input: 3,4\n\nObservation:
12\nThought: \n"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream":
false, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1305'
content-type:
- application/json
cookie:
- __cf_bm=rIaStuxTRr_ZC91uSFg5cthTUq95O6PBdkxXZ68fLYc-1703091652-1-AZu+nvbL+3bwwQOIKpnYgLf5m5Mp0jfQ2baAlDRl1+FiTPO+/+GjcF4Upw4M8vtfh39ZyWF+l68r83qCS9OpObU=;
_cfuvid=Ajd5lPskQSkBImLJdkywZGG4vHMkMCBcxb8TonP9OKc-1703091652762-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.6.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.6.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8XuE86Ud94rsOP7VA4Bgxo6RM5XE6\",\n \"object\":
\"chat.completion\",\n \"created\": 1703091652,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Do I need to use a tool? No\\nFinal Answer:
3 times 4 is 12.\"\n },\n \"logprobs\": null,\n \"finish_reason\":
\"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 293,\n \"completion_tokens\":
22,\n \"total_tokens\": 315\n },\n \"system_fingerprint\": null\n}\n"
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 838971ae0f120110-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Wed, 20 Dec 2023 17:00:55 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '2334'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-limit-tokens_usage_based:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299703'
x-ratelimit-remaining-tokens_usage_based:
- '299703'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 59ms
x-ratelimit-reset-tokens_usage_based:
- 59ms
x-request-id:
- 44304b182424a8acad8a3121817bea58
http_version: HTTP/1.1
status_code: 200
- req_5d13f96a4d7cb8b5c7b58fc21d96c80f
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
@@ -242,26 +132,26 @@ interactions:
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: What
is 3 times 4\nAI: 3 times 4 is 12.\n\nNew summary:"}], "model": "gpt-4", "n":
1, "stream": false, "temperature": 0.7}'
is 3 times 4\nAI: 12\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream":
false, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '885'
- '871'
content-type:
- application/json
cookie:
- __cf_bm=rIaStuxTRr_ZC91uSFg5cthTUq95O6PBdkxXZ68fLYc-1703091652-1-AZu+nvbL+3bwwQOIKpnYgLf5m5Mp0jfQ2baAlDRl1+FiTPO+/+GjcF4Upw4M8vtfh39ZyWF+l68r83qCS9OpObU=;
_cfuvid=Ajd5lPskQSkBImLJdkywZGG4vHMkMCBcxb8TonP9OKc-1703091652762-0-604800000
- __cf_bm=A4_gsEewjfI_cxZT.kzwJOFlNMwGcVQ79F2fvRwT0GU-1708396925-1.0-Acz2vnKqtu4QQDdoAEAvUGGWPfgH2233lNKW2S0hpo4P7GLtP1zHbDcmpxbJKfZnVlmOgzQjlTUGTtkAn4jqBOc=;
_cfuvid=jbzd0_VB5OSlOP6ehIcdvPI61zEtxDnSKYD1UiuNCFw-1708396925948-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.6.0
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -271,7 +161,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.6.0
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -279,29 +169,29 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8XuEBWLslSBUMDHZRViwpoXcclYOk\",\n \"object\":
\"chat.completion\",\n \"created\": 1703091655,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"The human asks the AI what is 3 times
4, and the AI responds that 3 times 4 is 12.\"\n },\n \"logprobs\":
null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\":
155,\n \"completion_tokens\": 27,\n \"total_tokens\": 182\n },\n \"system_fingerprint\":
null\n}\n"
body:
string: !!binary |
IRQIACBK2nT3Muk0P0HircDgoOmp5f+7CW4f72isiqKxeOJlYRhgAfeiNUQjzuZGxZCcdyiyGfn8
9lcAnL9Tgm+zl/7NeB2OhpXDYraaq5dXv324/dmO3mx/+H39eaI3DhkIgO51od56SRS5GOi5sxSI
XD6n3imR1skoH1fjrALfGPeuNCU49X1YhEmV5lKzMzd/Ux0l7gQA/M5aAPveDymRBKvghcEoiT8B
bJ1WlOBL1827/sX2DAiVtHVDEjyfKTSI2H3pll2Pjz0rO+gdHD4c5CiftYHizdgrO0jBNvne4XPe
z5BmEXXC/8rtaTf1rXvtKGEHrTFI+GY8FdeaoQS73vktvH8BPBihPtzrEX3rjO+ferdUtqNEWozP
MmjvCoNk6ah8j0AFc9M6EVpixuAfeZrM7VS1vp3bJG0HrcW/MAAD
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 838971be49500110-GRU
- 858364f3f9c101b0-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
- br
Content-Type:
- application/json
Date:
- Wed, 20 Dec 2023 17:00:58 GMT
- Tue, 20 Feb 2024 02:42:07 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -313,9 +203,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '2942'
- '737'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -324,22 +214,17 @@ interactions:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-limit-tokens_usage_based:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299794'
x-ratelimit-remaining-tokens_usage_based:
- '299794'
- '299798'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 41ms
x-ratelimit-reset-tokens_usage_based:
- 41ms
- 40ms
x-request-id:
- 546e9b3713f3ff2d7f9868133efaa3a7
http_version: HTTP/1.1
status_code: 200
- req_afa9aab4213989f7a5f167139b479a8c
status:
code: 200
message: OK
version: 1

View File

@@ -1,36 +1,33 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goal\n\nTOOLS:\n------\nYou have access to the following
tools:\n\nmultiplier: multiplier(numbers) -> float - Useful for when you need
to multiply two numbers together. \n\t\t\tThe input to this tool should be a
comma separated list of numbers of \n\t\t\tlength two, representing the two
numbers you want to multiply together. \n\t\t\tFor example, `1,2` would be the
input if you wanted to multiply 1 by 2.\n\nTo use a tool, please use the exact
following format:\n\n```\nThought: Do I need to use a tool? Yes\nAction: the
action to take, should be one of [multiplier]\nAction Input: the input to the
action\nObservation: the result of the action\n```\n\nWhen you have a response
for your task, or if you do not need to use a tool, you MUST use the format:\n\n```\nThought:
Do I need to use a tool? No\nFinal Answer: [your response here]\n```\n\t\tThis
is the summary of your work so far:\n \nBegin! This is VERY important to
you, your job depends on it!\n\nCurrent Task: What is 3 times 4\n\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nObservation"], "stream": false, "temperature":
0.7}'
personal goal is: test goalYou have access to ONLY the following tools, use
one at time:\n\nmultiplier: multiplier(first_number: int, second_number: int)
-> float - Useful for when you need to multiply two numbers together.\n\nTo
use a tool you MUST use the exact following format:\n\n```\nUse Tool: the tool
you wanna use, should be one of [multiplier] and absolute all relevant input
and context for using the tool, you must use only one tool at once.\nResult:
[result of the tool]\n```\n\nTo complete the task you MUST follow the format:\n\n```\nFinal
Answer: [THE MOST COMPLETE ANSWE WITH ALL CONTEXT, DO NOT LEAVE ANYTHING OUT]\n```
You must use these formats, my life depends on it.This is the summary of your
work so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: What is 3 times 4?\n"}], "model": "gpt-4", "n": 1, "stop": ["\nResult"],
"stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1199'
- '1003'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.6.0
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -40,7 +37,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.6.0
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -48,35 +45,109 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8XuDxosP85Kqo6mU6biIggZ5c828i\",\n \"object\":
\"chat.completion\",\n \"created\": 1703091641,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Thought: Do I need to use a tool? Yes\\nAction:
multiplier\\nAction Input: 3,4\"\n },\n \"logprobs\": null,\n \"finish_reason\":
\"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 260,\n \"completion_tokens\":
23,\n \"total_tokens\": 283\n },\n \"system_fingerprint\": null\n}\n"
body:
string: 'data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
multiplier"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
with"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
first"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
as"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
and"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
second"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_number"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
as"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMHBJxGwYmDm0whtJ7ryA3FNzz9","object":"chat.completion.chunk","created":1708396877,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 83897166eba7a5fd-GRU
- 858363c36d03a4ba-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
- text/event-stream
Date:
- Wed, 20 Dec 2023 17:00:44 GMT
- Tue, 20 Feb 2024 02:41:18 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=dRKr_rTtq3ZGad82s4Lpo6VOXPMLScbjq8fMvjANBpY-1703091644-1-AUDR6a/EPcG95H4He0KddFkZbk45hbZTA/BPUyFBTNiYGlzd2GIBZnPgpVOJXfr9n4lXV8jRf1bRmUJbsZnQ5MM=;
path=/; expires=Wed, 20-Dec-23 17:30:44 GMT; domain=.api.openai.com; HttpOnly;
- __cf_bm=pxRSwqCB1TUHGyPk7A3gNpxP.p.GG4odLvnn1enCzA0-1708396878-1.0-AbvCo+vNuHWyCl3Gm6D//s2A4XFGiLKt9NtnD5752PrzioOdLnmpwWLpDreFWIOxV13kHVhfEi1Y2KMEjaxfDtY=;
path=/; expires=Tue, 20-Feb-24 03:11:18 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=suHEOi6nmUCq7cFZiZAg5nwyGtTeiFynig5_5V4esA8-1703091644341-0-604800000;
- _cfuvid=ZXYFqXlrgq6ZaXX8prqOY4rU1o6I8IG2Hu4kEeiJ7Rw-1708396878059-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
@@ -87,9 +158,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '2718'
- '334'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -98,60 +169,56 @@ interactions:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-limit-tokens_usage_based:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299729'
x-ratelimit-remaining-tokens_usage_based:
- '299729'
- '299770'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 54ms
x-ratelimit-reset-tokens_usage_based:
- 54ms
- 46ms
x-request-id:
- 1714a9f5a2141d30f72506facf616944
http_version: HTTP/1.1
status_code: 200
- req_78cdca068954cd60d8c31a21a1591022
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goal\n\nTOOLS:\n------\nYou have access to the following
tools:\n\nmultiplier: multiplier(numbers) -> float - Useful for when you need
to multiply two numbers together. \n\t\t\tThe input to this tool should be a
comma separated list of numbers of \n\t\t\tlength two, representing the two
numbers you want to multiply together. \n\t\t\tFor example, `1,2` would be the
input if you wanted to multiply 1 by 2.\n\nTo use a tool, please use the exact
following format:\n\n```\nThought: Do I need to use a tool? Yes\nAction: the
action to take, should be one of [multiplier]\nAction Input: the input to the
action\nObservation: the result of the action\n```\n\nWhen you have a response
for your task, or if you do not need to use a tool, you MUST use the format:\n\n```\nThought:
Do I need to use a tool? No\nFinal Answer: [your response here]\n```\n\t\tThis
is the summary of your work so far:\n \nBegin! This is VERY important to
you, your job depends on it!\n\nCurrent Task: What is 3 times 4\nThought: Do
I need to use a tool? Yes\nAction: multiplier\nAction Input: 3,4\nObservation:
12\nThought: \n"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream":
false, "temperature": 0.7}'
body: '{"messages": [{"role": "user", "content": "Tools available:\n\nTool Name:
multiplier\nTool Description: multiplier(first_number: int, second_number: int)
-> float - Useful for when you need to multiply two numbers together.\nTool
Arguments: {''first_number'': {''type'': ''integer''}, ''second_number'': {''type'':
''integer''}}\n\nReturn a valid schema for the tool, the tool name must be equal
one of the options, use this text to inform a valid ouput schema:\nUse Tool:
multiplier, with the first_number as 3 and the second_number as 4.```"}, {"role":
"system", "content": "The schema should have the following structure, only two
keys:\n- tool_name: str\n- arguments: dict (with all arguments being passed)\n\nExample:\n{\"tool_name\":
\"tool_name\", \"arguments\": {\"arg_name1\": \"value\", \"arg_name2\": 2}}\n"}],
"model": "gpt-4", "tool_choice": {"type": "function", "function": {"name": "InstructorToolCalling"}},
"tools": [{"type": "function", "function": {"name": "InstructorToolCalling",
"description": "Correctly extracted `InstructorToolCalling` with all the required
parameters with correct types", "parameters": {"properties": {"tool_name": {"description":
"The name of the tool to be called.", "title": "Tool Name", "type": "string"},
"arguments": {"description": "A dictinary of arguments to be passed to the tool.",
"title": "Arguments", "type": "object"}}, "required": ["arguments", "tool_name"],
"type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1303'
- '1427'
content-type:
- application/json
cookie:
- __cf_bm=dRKr_rTtq3ZGad82s4Lpo6VOXPMLScbjq8fMvjANBpY-1703091644-1-AUDR6a/EPcG95H4He0KddFkZbk45hbZTA/BPUyFBTNiYGlzd2GIBZnPgpVOJXfr9n4lXV8jRf1bRmUJbsZnQ5MM=;
_cfuvid=suHEOi6nmUCq7cFZiZAg5nwyGtTeiFynig5_5V4esA8-1703091644341-0-604800000
- __cf_bm=pxRSwqCB1TUHGyPk7A3gNpxP.p.GG4odLvnn1enCzA0-1708396878-1.0-AbvCo+vNuHWyCl3Gm6D//s2A4XFGiLKt9NtnD5752PrzioOdLnmpwWLpDreFWIOxV13kHVhfEi1Y2KMEjaxfDtY=;
_cfuvid=ZXYFqXlrgq6ZaXX8prqOY4rU1o6I8IG2Hu4kEeiJ7Rw-1708396878059-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.6.0
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -161,7 +228,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.6.0
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -169,28 +236,31 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8XuE0tWsbI9QDkRau6rzSUZfuqhFN\",\n \"object\":
\"chat.completion\",\n \"created\": 1703091644,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Do I need to use a tool? No\\nFinal Answer:
12\"\n },\n \"logprobs\": null,\n \"finish_reason\": \"stop\"\n
\ }\n ],\n \"usage\": {\n \"prompt_tokens\": 293,\n \"completion_tokens\":
15,\n \"total_tokens\": 308\n },\n \"system_fingerprint\": null\n}\n"
body:
string: !!binary |
IcwMACBG6nT3Mv39HEJtBWDlfDIkUSsylf33pxoESBftQaG1aL0L/QQogsFceHRxRAucFqhYm2tz
s96t5BBRvoD23r8IoM4owHSr6tQG0100Oxcnr+XV8f7r2Pl9o5vdneHLw8nn8/mjZScC6JP3PK05
mZ6LgaW9g5CRy1/lGQWG88FivJwt5gviGeuz3FCAm1B3J93BbDjmern1Os0rCrxFAPD3NgF47v2I
AoNOK+mFoVIAfwSw9CanAFVV6apWrmYHANLWzQq4xhjiUu29iVNljHD8if59g0n6qzImnqv64GV5
Xy8vxpunqgqHt4OP64f5o0y8e/EnDIrywOjFULQxITAH0CmrkHriQrh/z5f33ps9ZYx2m85cgIu9
QQH+SQdI7S44ZXNJAclj6teC0Xkp2UFRnJikwAVAcq3Lqo63wlqRFBh3qFRMeXh9OJEOaKVrqQPa
toCbXuGYdirW0fhNKH1SrQzD9HhIvBXZGgVY1T6I8dsIWJnMsLGCMwylt6GOa/+Ru4oCo2lBaJ0A
IY8nFfxMAkDzRotJNEqWGQtuxGvtNnkZSm1BRtRGAw==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 838971796af6a5fd-GRU
- 858363ccdaa8a4ba-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
- br
Content-Type:
- application/json
Date:
- Wed, 20 Dec 2023 17:00:46 GMT
- Tue, 20 Feb 2024 02:41:20 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -202,9 +272,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '2355'
- '1805'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -213,24 +283,184 @@ interactions:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-limit-tokens_usage_based:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299805'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 38ms
x-request-id:
- req_2267942750c31c5ca2874ac7955f01ba
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalYou have access to ONLY the following tools, use
one at time:\n\nmultiplier: multiplier(first_number: int, second_number: int)
-> float - Useful for when you need to multiply two numbers together.\n\nTo
use a tool you MUST use the exact following format:\n\n```\nUse Tool: the tool
you wanna use, should be one of [multiplier] and absolute all relevant input
and context for using the tool, you must use only one tool at once.\nResult:
[result of the tool]\n```\n\nTo complete the task you MUST follow the format:\n\n```\nFinal
Answer: [THE MOST COMPLETE ANSWE WITH ALL CONTEXT, DO NOT LEAVE ANYTHING OUT]\n```
You must use these formats, my life depends on it.This is the summary of your
work so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: What is 3 times 4?\nUse Tool: multiplier, with the first_number as 3 and
the second_number as 4.\nResult: 12\nIf you don''t need to use any more tools,
use the correct format for your final answer:\n\n```Final Answer: [your most
complete final answer goes here]```\nThought: "}], "model": "gpt-4", "n": 1,
"stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1257'
content-type:
- application/json
cookie:
- __cf_bm=pxRSwqCB1TUHGyPk7A3gNpxP.p.GG4odLvnn1enCzA0-1708396878-1.0-AbvCo+vNuHWyCl3Gm6D//s2A4XFGiLKt9NtnD5752PrzioOdLnmpwWLpDreFWIOxV13kHVhfEi1Y2KMEjaxfDtY=;
_cfuvid=ZXYFqXlrgq6ZaXX8prqOY4rU1o6I8IG2Hu4kEeiJ7Rw-1708396878059-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
The"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
result"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
of"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
times"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
is"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"12"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uAMLnUD3TMLOxxlfdFdC7pXnV7ML","object":"chat.completion.chunk","created":1708396881,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858363d9ea45a4ba-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Tue, 20 Feb 2024 02:41:21 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '269'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299704'
x-ratelimit-remaining-tokens_usage_based:
- '299704'
- '299708'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 59ms
x-ratelimit-reset-tokens_usage_based:
- 59ms
- 58ms
x-request-id:
- a3de9d34f17496d9bdd2ae9360f6054a
http_version: HTTP/1.1
status_code: 200
- req_45e08b4c819934e33f9b4554aa25a548
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
@@ -242,26 +472,26 @@ interactions:
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: What
is 3 times 4\nAI: 12\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream":
false, "temperature": 0.7}'
is 3 times 4?\nAI: The result of 3 times 4 is 12.\n\nNew summary:"}], "model":
"gpt-4", "n": 1, "stream": false, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '871'
- '900'
content-type:
- application/json
cookie:
- __cf_bm=dRKr_rTtq3ZGad82s4Lpo6VOXPMLScbjq8fMvjANBpY-1703091644-1-AUDR6a/EPcG95H4He0KddFkZbk45hbZTA/BPUyFBTNiYGlzd2GIBZnPgpVOJXfr9n4lXV8jRf1bRmUJbsZnQ5MM=;
_cfuvid=suHEOi6nmUCq7cFZiZAg5nwyGtTeiFynig5_5V4esA8-1703091644341-0-604800000
- __cf_bm=pxRSwqCB1TUHGyPk7A3gNpxP.p.GG4odLvnn1enCzA0-1708396878-1.0-AbvCo+vNuHWyCl3Gm6D//s2A4XFGiLKt9NtnD5752PrzioOdLnmpwWLpDreFWIOxV13kHVhfEi1Y2KMEjaxfDtY=;
_cfuvid=ZXYFqXlrgq6ZaXX8prqOY4rU1o6I8IG2Hu4kEeiJ7Rw-1708396878059-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.6.0
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -271,7 +501,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.6.0
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -279,28 +509,29 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8XuE3Di6FRdNAetXNfWs6OWyRAfkf\",\n \"object\":
\"chat.completion\",\n \"created\": 1703091647,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"The human asks the AI what is 3 times
4 and the AI responds with 12.\"\n },\n \"logprobs\": null,\n \"finish_reason\":
\"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 149,\n \"completion_tokens\":
20,\n \"total_tokens\": 169\n },\n \"system_fingerprint\": null\n}\n"
body:
string: !!binary |
IWAIACDGO/f6GHXvdMsf4wYM5VBp4/+7CS73Pt5RYwHtjT+wskCzPFxDNN3mE39EbaJ2m9q/vwJg
9U4JvpUvw5t2yl+MKwcHQ3x1OpmvFu3m195scn4xW1Vv8714oCcA2tc6exuYNAgxUCtrIPBy+VL2
Tol4Hi3S5WyxSA6/aPueKUqwcIM/8aNZnLIWS1u9ZT0l7gQA/K46APvetygRebsQhSFQAt8A7KzK
KMGXvq/64cXoSibEtHVjEjwvMzSIOHzpm77Hx8mVHXyWLwPqjm2UDRuDzZGijlYDkwDnWMjD1n/v
kVG4yQhXPeIkoJrsX98jZQvX2deeEmZUyg7IAYee6m0tUIL9YJ0I/V8AD35pj6a+ouusdsPTYJvM
9JSIpwuZiFfQQHDJbDR+TKDJ1BYToSXjs/wzT3lliqxzXeUmrxmVEv/CAAM=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 838971899954a5fd-GRU
- 858363e08e96a4ba-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
- br
Content-Type:
- application/json
Date:
- Wed, 20 Dec 2023 17:00:49 GMT
- Tue, 20 Feb 2024 02:41:23 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -312,9 +543,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '2698'
- '1506'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -323,22 +554,17 @@ interactions:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-limit-tokens_usage_based:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299798'
x-ratelimit-remaining-tokens_usage_based:
- '299798'
- '299790'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 40ms
x-ratelimit-reset-tokens_usage_based:
- 40ms
- 42ms
x-request-id:
- ddbd97cea4ec099c21c00ca922157ae1
http_version: HTTP/1.1
status_code: 200
- req_47af60e4e16d4cf08c4a07328530376e
status:
code: 200
message: OK
version: 1

File diff suppressed because it is too large Load Diff

View File

@@ -1,34 +1,29 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to the following
tools:\n\nget_final_answer: get_final_answer(numbers) -> float - Get the final
answer but don''t give it yet, just re-use this\n tool non-stop.\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the action to take, should be one of [get_final_answer],
just the name.\nAction Input: the input to the action\nObservation: the result
of the action\n```\n\nWhen you have a response for your task, or if you do not
need to use a tool, you MUST use the format:\n\n```\nThought: Do I need to use
a tool? No\nFinal Answer: [your response here]This is the summary of your work
so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: The final answer is 42. But don''t give it yet, instead keep using the
`get_final_answer` tool.\n"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"],
"stream": false, "temperature": 0.7}'
personal goal is: test goalTo complete the task you MUST follow the format:\n\n```\nFinal
Answer: [your most complete final answer goes here]\n``` You must use these
formats, my life depends on it.This is the summary of your work so far:\nBegin!
This is VERY important to you, your job depends on it!\n\nCurrent Task: The
final answer is 42. But don''t give it yet, instead keep using the `get_final_answer`
tool. Until you''re told you could give my final answer if I''m ready.\n"}],
"model": "gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1075'
- '651'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.7.1
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -38,7 +33,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.7.1
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -46,36 +41,137 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8frBTCWXULTV5ZYHy3Y5JXKovrKiN\",\n \"object\":
\"chat.completion\",\n \"created\": 1704986579,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Thought: Do I need to use a tool? Yes\\nAction:
get_final_answer\\nAction Input: [42]\"\n },\n \"logprobs\": null,\n
\ \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\":
233,\n \"completion_tokens\": 24,\n \"total_tokens\": 257\n },\n \"system_fingerprint\":
null\n}\n"
body:
string: 'data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
will"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
continue"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
`"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"get"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"`"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
as"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
instructed"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
until"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"''m"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
told"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
that"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
can"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
provide"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIskFZUTbLfl3X1aj6NewKQkSuku","object":"chat.completion.chunk","created":1708429642,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 843e2886ceca1d23-GRU
- 858683aeaa811a96-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
- text/event-stream
Date:
- Thu, 11 Jan 2024 15:23:03 GMT
- Tue, 20 Feb 2024 11:47:22 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=GdfwhILXB4b01GTJ_0AXbmROnfxzuPlJLxFJLh4vT8s-1704986583-1-AVb+x5LLEXeeVIiDv7ug/2lnD4qFsyXri+Vg04LYp0s2eK+KH8sGMWHpPzgzKOu9sf3rVi7Fl2OOuY7+OjbUYY8=;
path=/; expires=Thu, 11-Jan-24 15:53:03 GMT; domain=.api.openai.com; HttpOnly;
- __cf_bm=cebZVmrKggZuyEb_FdrVWb1o2mbnwWNS6vM7T7rqR7o-1708429642-1.0-Ab8Ub345zPVWdzHZi4w8XoesS8el60DpW4kyn6Mia2YbPXi6Er3epAi4ixvf3D9kYWxMjlcb4ByxE42WGh2lvtw=;
path=/; expires=Tue, 20-Feb-24 12:17:22 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=kdwpHybL9TBve9Df7KLsRqp49GrJ05.atUaH_t6plL0-1704986583862-0-604800000;
- _cfuvid=FRnXNKZdLb4ckS3ig71fXojlsn48uEKwIvO1vMHWJPw-1708429642627-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
@@ -86,9 +182,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '4424'
- '312'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -100,49 +196,52 @@ interactions:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299755'
- '299855'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 49ms
- 29ms
x-request-id:
- 76974d365254ca84f70c43fc31af3378
http_version: HTTP/1.1
status_code: 200
- req_2637c7cea11c3fb699cafd1dfc6eff3e
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to the following
tools:\n\nget_final_answer: get_final_answer(numbers) -> float - Get the final
answer but don''t give it yet, just re-use this\n tool non-stop.\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the action to take, should be one of [get_final_answer],
just the name.\nAction Input: the input to the action\nObservation: the result
of the action\n```\n\nWhen you have a response for your task, or if you do not
need to use a tool, you MUST use the format:\n\n```\nThought: Do I need to use
a tool? No\nFinal Answer: [your response here]This is the summary of your work
so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: The final answer is 42. But don''t give it yet, instead keep using the
`get_final_answer` tool.\nThought: Do I need to use a tool? Yes\nAction: get_final_answer\nAction
Input: [42]\nObservation: 42\nThought: "}], "model": "gpt-4", "n": 1, "stop":
["\nObservation"], "stream": false, "temperature": 0.7}'
personal goal is: test goalTo complete the task you MUST follow the format:\n\n```\nFinal
Answer: [your most complete final answer goes here]\n``` You must use these
formats, my life depends on it.This is the summary of your work so far:\nBegin!
This is VERY important to you, your job depends on it!\n\nCurrent Task: The
final answer is 42. But don''t give it yet, instead keep using the `get_final_answer`
tool. Until you''re told you could give my final answer if I''m ready.\nI will
continue to use the `get_final_answer` tool as instructed, until I''m told that
I can provide the final answer.\nResult: \nYou didn''t use the expected format,
you MUST use a tool or give your best final answer.\nTo use a tool you MUST
use the exact following format:\n\n```\nUse Tool: the tool you wanna use, and
absolute all relevant input and context for using the tool, you must use only
one tool at once.\nResult: [result of the tool]\n```\n\nTo complete the task
you MUST follow the format:\n\n```\nFinal Answer: [your most complete final
answer goes here]\n``` You must use these formats, my life depends on it.\nThought:
"}], "model": "gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1186'
- '1285'
content-type:
- application/json
cookie:
- __cf_bm=GdfwhILXB4b01GTJ_0AXbmROnfxzuPlJLxFJLh4vT8s-1704986583-1-AVb+x5LLEXeeVIiDv7ug/2lnD4qFsyXri+Vg04LYp0s2eK+KH8sGMWHpPzgzKOu9sf3rVi7Fl2OOuY7+OjbUYY8=;
_cfuvid=kdwpHybL9TBve9Df7KLsRqp49GrJ05.atUaH_t6plL0-1704986583862-0-604800000
- __cf_bm=cebZVmrKggZuyEb_FdrVWb1o2mbnwWNS6vM7T7rqR7o-1708429642-1.0-Ab8Ub345zPVWdzHZi4w8XoesS8el60DpW4kyn6Mia2YbPXi6Er3epAi4ixvf3D9kYWxMjlcb4ByxE42WGh2lvtw=;
_cfuvid=FRnXNKZdLb4ckS3ig71fXojlsn48uEKwIvO1vMHWJPw-1708429642627-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.7.1
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -152,7 +251,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.7.1
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -160,29 +259,192 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8frBYkyVPtJuAJCESaOxEBg3UAfl4\",\n \"object\":
\"chat.completion\",\n \"created\": 1704986584,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Do I need to use a tool? Yes\\nAction:
get_final_answer\\nAction Input: [42]\"\n },\n \"logprobs\": null,\n
\ \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\":
266,\n \"completion_tokens\": 22,\n \"total_tokens\": 288\n },\n \"system_fingerprint\":
null\n}\n"
body:
string: 'data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
keep"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
using"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
`"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"get"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"`"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
until"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"''m"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
told"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
otherwise"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
However"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
also"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
ensure"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
that"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"''m"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
using"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
correct"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
format"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
when"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
using"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
and"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
when"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
providing"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsmzDi6jXai5Rj9XVxBoySptu9k","object":"chat.completion.chunk","created":1708429644,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 843e28a57d911d23-GRU
- 858683babe751a96-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
- text/event-stream
Date:
- Thu, 11 Jan 2024 15:23:07 GMT
- Tue, 20 Feb 2024 11:47:24 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -194,9 +456,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '3329'
- '315'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -208,52 +470,58 @@ interactions:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299728'
- '299700'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 54ms
- 59ms
x-request-id:
- 1b9a1e09f863ff69cecfe4e7bed0aee5
http_version: HTTP/1.1
status_code: 200
- req_269e3cff6178fc09d3d87d54f62573f8
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to the following
tools:\n\nget_final_answer: get_final_answer(numbers) -> float - Get the final
answer but don''t give it yet, just re-use this\n tool non-stop.\n\nTo
use a tool, please use the exact following format:\n\n```\nThought: Do I need
to use a tool? Yes\nAction: the action to take, should be one of [get_final_answer],
just the name.\nAction Input: the input to the action\nObservation: the result
of the action\n```\n\nWhen you have a response for your task, or if you do not
need to use a tool, you MUST use the format:\n\n```\nThought: Do I need to use
a tool? No\nFinal Answer: [your response here]This is the summary of your work
so far:\nBegin! This is VERY important to you, your job depends on it!\n\nCurrent
Task: The final answer is 42. But don''t give it yet, instead keep using the
`get_final_answer` tool.\nThought: Do I need to use a tool? Yes\nAction: get_final_answer\nAction
Input: [42]\nObservation: 42\nThought: Do I need to use a tool? Yes\nAction:
get_final_answer\nAction Input: [42]\nObservation: I''ve used too many tools
for this task.\nI''m going to give you my absolute BEST Final answer now and\nnot
use any more tools.\nThought: "}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"],
"stream": false, "temperature": 0.7}'
personal goal is: test goalTo complete the task you MUST follow the format:\n\n```\nFinal
Answer: [your most complete final answer goes here]\n``` You must use these
formats, my life depends on it.This is the summary of your work so far:\nBegin!
This is VERY important to you, your job depends on it!\n\nCurrent Task: The
final answer is 42. But don''t give it yet, instead keep using the `get_final_answer`
tool. Until you''re told you could give my final answer if I''m ready.\nI will
continue to use the `get_final_answer` tool as instructed, until I''m told that
I can provide the final answer.\nResult: \nYou didn''t use the expected format,
you MUST use a tool or give your best final answer.\nTo use a tool you MUST
use the exact following format:\n\n```\nUse Tool: the tool you wanna use, and
absolute all relevant input and context for using the tool, you must use only
one tool at once.\nResult: [result of the tool]\n```\n\nTo complete the task
you MUST follow the format:\n\n```\nFinal Answer: [your most complete final
answer goes here]\n``` You must use these formats, my life depends on it.\nThought:
I need to keep using the `get_final_answer` tool until I''m told otherwise.
However, I also need to ensure that I''m using the correct format when using
the tool and when providing the final answer.\nResult: Actually, I used too
many tools, so I''ll stop now and give you my absolute BEST Final answer NOW,
using exaclty the expected format bellow:\n\n```\nFinal Answer: [your most complete
final answer goes here]\n``` You must use these formats, my life depends on
it.\nThought: "}], "model": "gpt-4", "n": 1, "stop": ["\nResult"], "stream":
true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1411'
- '1763'
content-type:
- application/json
cookie:
- __cf_bm=GdfwhILXB4b01GTJ_0AXbmROnfxzuPlJLxFJLh4vT8s-1704986583-1-AVb+x5LLEXeeVIiDv7ug/2lnD4qFsyXri+Vg04LYp0s2eK+KH8sGMWHpPzgzKOu9sf3rVi7Fl2OOuY7+OjbUYY8=;
_cfuvid=kdwpHybL9TBve9Df7KLsRqp49GrJ05.atUaH_t6plL0-1704986583862-0-604800000
- __cf_bm=cebZVmrKggZuyEb_FdrVWb1o2mbnwWNS6vM7T7rqR7o-1708429642-1.0-Ab8Ub345zPVWdzHZi4w8XoesS8el60DpW4kyn6Mia2YbPXi6Er3epAi4ixvf3D9kYWxMjlcb4ByxE42WGh2lvtw=;
_cfuvid=FRnXNKZdLb4ckS3ig71fXojlsn48uEKwIvO1vMHWJPw-1708429642627-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.7.1
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -263,7 +531,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.7.1
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -271,29 +539,214 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8frBbQ3vq0kEry4X3a1RkMEkIAP99\",\n \"object\":
\"chat.completion\",\n \"created\": 1704986587,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Do I need to use a tool? No\\nFinal Answer:
I have used the tool multiple times and the final answer remains 42.\"\n },\n
\ \"logprobs\": null,\n \"finish_reason\": \"stop\"\n }\n ],\n
\ \"usage\": {\n \"prompt_tokens\": 323,\n \"completion_tokens\": 28,\n
\ \"total_tokens\": 351\n },\n \"system_fingerprint\": null\n}\n"
body:
string: 'data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Now"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
that"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
have"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
been"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
instructed"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
give"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
my"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
will"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
so"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
using"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
required"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
format"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
taking"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
into"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
account"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
result"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
of"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
`"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"get"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"_answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"`"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
which"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
indicated"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
that"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
the"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
is"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"42"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":".\n\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"42"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uIsobcV13dDFImGCVNZ46dOIICAn","object":"chat.completion.chunk","created":1708429646,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 843e28bbbb071d23-GRU
- 858683cbdd451a96-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
- text/event-stream
Date:
- Thu, 11 Jan 2024 15:23:13 GMT
- Tue, 20 Feb 2024 11:47:27 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -305,9 +758,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '5459'
- '377'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -319,15 +772,16 @@ interactions:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299673'
- '299583'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 65ms
- 83ms
x-request-id:
- 0a5c1064b324c997b16bf17d426f9638
http_version: HTTP/1.1
status_code: 200
- req_e65c83bdbf473b8a71b1a1fd7d1abc0d
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
@@ -340,27 +794,27 @@ interactions:
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: The final
answer is 42. But don''t give it yet, instead keep using the `get_final_answer`
tool.\nAI: I have used the tool multiple times and the final answer remains
42.\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
tool. Until you''re told you could give my final answer if I''m ready.\nAI:
42\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1014'
- '1011'
content-type:
- application/json
cookie:
- __cf_bm=GdfwhILXB4b01GTJ_0AXbmROnfxzuPlJLxFJLh4vT8s-1704986583-1-AVb+x5LLEXeeVIiDv7ug/2lnD4qFsyXri+Vg04LYp0s2eK+KH8sGMWHpPzgzKOu9sf3rVi7Fl2OOuY7+OjbUYY8=;
_cfuvid=kdwpHybL9TBve9Df7KLsRqp49GrJ05.atUaH_t6plL0-1704986583862-0-604800000
- __cf_bm=cebZVmrKggZuyEb_FdrVWb1o2mbnwWNS6vM7T7rqR7o-1708429642-1.0-Ab8Ub345zPVWdzHZi4w8XoesS8el60DpW4kyn6Mia2YbPXi6Er3epAi4ixvf3D9kYWxMjlcb4ByxE42WGh2lvtw=;
_cfuvid=FRnXNKZdLb4ckS3ig71fXojlsn48uEKwIvO1vMHWJPw-1708429642627-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.7.1
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -370,7 +824,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.7.1
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -378,30 +832,30 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8frBhKxiCRICQ8o6aJanmn8PTMsAr\",\n \"object\":
\"chat.completion\",\n \"created\": 1704986593,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"The human tells the AI that the final
answer is 42 and instructs it to continue using the `get_final_answer` tool.
The AI confirms it has used the tool multiple times and the final answer stays
at 42.\"\n },\n \"logprobs\": null,\n \"finish_reason\": \"stop\"\n
\ }\n ],\n \"usage\": {\n \"prompt_tokens\": 178,\n \"completion_tokens\":
46,\n \"total_tokens\": 224\n },\n \"system_fingerprint\": null\n}\n"
body:
string: !!binary |
IdAJACD+p053LdO7HySHtKUTABpkFJlaHrwJklkAuBUWnafROceWhWGYBhy+Ixpxus2n44pcEpPO
1PXtLwMoCYiD/NitfGXlaFMflIWOjs6/vl25eBD7C8dbXdmrhzQ+2qMhA8h4qfCrndT4iYGcGA0h
M5fPiYA4ZuvpxplvV87W+EaZQEjioMhWI2c0Xc0Wu2Zjk/iiJI4nBgC/sw5AuvcN4pgOV8lXGBxx
4E8AFUYK4iC3LJOycnVFQ0ClbN0YB13HAgIRaw2UoqXQx+7uACn0K/f0704kqrcw0a58c3X5KYoO
KmOkmsSeNhWuNPAD0BhqDbqGkxLOfIhwDb47hYD8//YYpQyJQ5BV3vBBic+kikl/ijMfEwX0Pxd7
0kS2MF5JHLqWkiOyvhzy1strhjiorIx1of4z4IXzZk3jI7KFUbZ6q0wmdEkcs83MJ0LhrSAYZzUq
vzFQsSnz+ZqdkqaU/xNvYaIjUdgiCYFT11Kyf2YAAw==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 843e28df4ae81d23-GRU
- 858683dddd511a96-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
- br
Content-Type:
- application/json
Date:
- Thu, 11 Jan 2024 15:23:18 GMT
- Tue, 20 Feb 2024 11:47:33 GMT
Server:
- cloudflare
Transfer-Encoding:
@@ -413,9 +867,9 @@ interactions:
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
- crewai-iuxna1
openai-processing-ms:
- '5518'
- '3383'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -427,13 +881,14 @@ interactions:
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299761'
- '299763'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- 4100fde9c68d27d808de645637b3e7cc
http_version: HTTP/1.1
status_code: 200
- req_10c09950dc1745fd0fbe8244a75637eb
status:
code: 200
message: OK
version: 1

View File

@@ -0,0 +1,488 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalYou have access to ONLY the following tools, use
one at time:\n\nget_final_answer: get_final_answer(anything: str) -> float -
Get the final answer but don''t give it yet, just re-use this\n tool
non-stop.\n\nTo use a tool you MUST use the exact following format:\n\n```\nUse
Tool: the tool you wanna use, should be one of [get_final_answer] and absolute
all relevant input and context for using the tool, you must use only one tool
at once.\nResult: [result of the tool]\n```\n\nTo give your final answer use
the exact following format:\n\n```\nFinal Answer: [THE MOST COMPLETE ANSWE WITH
ALL CONTEXT, DO NOT LEAVE ANYTHING OUT]\n```\nI MUST use these formats, my jobs
depends on it!This is the summary of your work so far:\n\n\nCurrent Task: The
final answer is 42. But don''t give it until I tell you so, instead keep using
the `get_final_answer` tool.\n\n Begin! This is VERY important to you, your
job depends on it!\n\n\n"}], "model": "gpt-4-0125-preview", "n": 1, "stop":
["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1145'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8umSlvb0E49ZRvWth5FKSw9Me8O4a","object":"chat.completion.chunk","created":1708543351,"model":"gpt-4-0125-preview","system_fingerprint":"fp_f084bcfc79","choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSlvb0E49ZRvWth5FKSw9Me8O4a","object":"chat.completion.chunk","created":1708543351,"model":"gpt-4-0125-preview","system_fingerprint":"fp_f084bcfc79","choices":[{"index":0,"delta":{"content":"Use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSlvb0E49ZRvWth5FKSw9Me8O4a","object":"chat.completion.chunk","created":1708543351,"model":"gpt-4-0125-preview","system_fingerprint":"fp_f084bcfc79","choices":[{"index":0,"delta":{"content":"
Tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSlvb0E49ZRvWth5FKSw9Me8O4a","object":"chat.completion.chunk","created":1708543351,"model":"gpt-4-0125-preview","system_fingerprint":"fp_f084bcfc79","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSlvb0E49ZRvWth5FKSw9Me8O4a","object":"chat.completion.chunk","created":1708543351,"model":"gpt-4-0125-preview","system_fingerprint":"fp_f084bcfc79","choices":[{"index":0,"delta":{"content":"
get"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSlvb0E49ZRvWth5FKSw9Me8O4a","object":"chat.completion.chunk","created":1708543351,"model":"gpt-4-0125-preview","system_fingerprint":"fp_f084bcfc79","choices":[{"index":0,"delta":{"content":"_final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSlvb0E49ZRvWth5FKSw9Me8O4a","object":"chat.completion.chunk","created":1708543351,"model":"gpt-4-0125-preview","system_fingerprint":"fp_f084bcfc79","choices":[{"index":0,"delta":{"content":"_answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSlvb0E49ZRvWth5FKSw9Me8O4a","object":"chat.completion.chunk","created":1708543351,"model":"gpt-4-0125-preview","system_fingerprint":"fp_f084bcfc79","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85915bc79a85a537-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Wed, 21 Feb 2024 19:22:31 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=yNWN6xxJzIde4UgAgONRHE3BZJmmCPGu7Ch2r8cft9A-1708543351-1.0-ASCEMu/lL3CxJvBcFTc1tUBtRrna4KuvHkF7gIGXFGT7IzdbHGcbdzKpMclXH0YRkPX7kIeGPEhgHxYfptOxLlM=;
path=/; expires=Wed, 21-Feb-24 19:52:31 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=rc0f50rp.We1R7UrhqtjVUfOr0VA90lt_6hQ5eO2240-1708543351878-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0125-preview
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '595'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '800000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '799739'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 19ms
x-request-id:
- req_5811f8911568932229521026f504c92b
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Tools available:\n###\nTool
Name: get_final_answer\nTool Description: get_final_answer(anything: str) ->
float - Get the final answer but don''t give it yet, just re-use this\n tool
non-stop.\nTool Arguments: {''anything'': {''type'': ''string''}}\n\nReturn
a valid schema for the tool, the tool name must be equal one of the options,
use this text to inform a valid ouput schema:\nUse Tool: get_final_answer```"},
{"role": "system", "content": "The schema should have the following structure,
only two keys:\n- tool_name: str\n- arguments: dict (with all arguments being
passed)\n\nExample:\n{\"tool_name\": \"tool name\", \"arguments\": {\"arg_name1\":
\"value\", \"arg_name2\": 2}}"}], "model": "gpt-4-0125-preview", "tool_choice":
{"type": "function", "function": {"name": "InstructorToolCalling"}}, "tools":
[{"type": "function", "function": {"name": "InstructorToolCalling", "description":
"Correctly extracted `InstructorToolCalling` with all the required parameters
with correct types", "parameters": {"properties": {"tool_name": {"description":
"The name of the tool to be called.", "title": "Tool Name", "type": "string"},
"arguments": {"anyOf": [{"type": "object"}, {"type": "null"}], "description":
"A dictinary of arguments to be passed to the tool.", "title": "Arguments"}},
"required": ["arguments", "tool_name"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1393'
content-type:
- application/json
cookie:
- __cf_bm=yNWN6xxJzIde4UgAgONRHE3BZJmmCPGu7Ch2r8cft9A-1708543351-1.0-ASCEMu/lL3CxJvBcFTc1tUBtRrna4KuvHkF7gIGXFGT7IzdbHGcbdzKpMclXH0YRkPX7kIeGPEhgHxYfptOxLlM=;
_cfuvid=rc0f50rp.We1R7UrhqtjVUfOr0VA90lt_6hQ5eO2240-1708543351878-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
IZgMACD+N1V3LdO/N7tV1pTS8HEYIZmEpuae///mg0OL9qBoLVr3RK+AEgw7aZhNwQ/+P9DHdE4f
YzyNShGHvMC2zx4SIpgUjKBWslYu2vascS9u+7kt3ieft1fvT8OPLL74/ufNJj2t0EqIEJa/WtWc
TMfFwDLBQ8jI5Xs6BaP+tDcbj4bD8YD4yIVUWzBCHuv2qN3rD8btKOmy3nDvroJRugKjn4SI6DCa
EOH79yMw6rVWSW8MFQz4JyKUwWowgqwqU9XS12gBQPq6WUa+sZa4VIdghZLWCsd79DAHynpVWive
Vu7zPLvdngyfR0/bbzNW5evqu76SiW8v7uKhKE+MXgxFG2MCc0Tw0vGrVz6U++9C+RqCPZHWGp9v
5hLh0gtghAN/sne8dJqDceS6Fpnx0grpq40uOVqcrcLBDhwGhFXSq+dbaiqZa47/fygE/VcPmNOL
yvyrfh1syGMZllVhkAYPEa8cWwMjVHWIYvz/hGhhEsPmli8hlsHFWtThT/sKjAaTUUNghQAh98cF
/DQCQPMG03lyShaZCTZEZnyuy1gaCzmALIqsNxstVaamcyT/iQED
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85915bcfcd52a537-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- br
Content-Type:
- application/json
Date:
- Wed, 21 Feb 2024 19:22:34 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0125-preview
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1629'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '800000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '799825'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 13ms
x-request-id:
- req_fdf979d873b6bedc600dbe2d9a119f05
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalYou have access to ONLY the following tools, use
one at time:\n\nget_final_answer: get_final_answer(anything: str) -> float -
Get the final answer but don''t give it yet, just re-use this\n tool
non-stop.\n\nTo use a tool you MUST use the exact following format:\n\n```\nUse
Tool: the tool you wanna use, should be one of [get_final_answer] and absolute
all relevant input and context for using the tool, you must use only one tool
at once.\nResult: [result of the tool]\n```\n\nTo give your final answer use
the exact following format:\n\n```\nFinal Answer: [THE MOST COMPLETE ANSWE WITH
ALL CONTEXT, DO NOT LEAVE ANYTHING OUT]\n```\nI MUST use these formats, my jobs
depends on it!This is the summary of your work so far:\n\n\nCurrent Task: The
final answer is 42. But don''t give it until I tell you so, instead keep using
the `get_final_answer` tool.\n\n Begin! This is VERY important to you, your
job depends on it!\n\n\nUse Tool: get_final_answer\nResult: 42\n\nIf you don''t
need to use any more tools, make sure use the correct format to give your final
answer:\n\n```Final Answer: [entire content of your most complete final answer
goes here]```\n You MUST use these formats, your jobs depends on it!\n"}], "model":
"gpt-4-0125-preview", "n": 1, "stop": ["\nResult"], "stream": true, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1430'
content-type:
- application/json
cookie:
- __cf_bm=yNWN6xxJzIde4UgAgONRHE3BZJmmCPGu7Ch2r8cft9A-1708543351-1.0-ASCEMu/lL3CxJvBcFTc1tUBtRrna4KuvHkF7gIGXFGT7IzdbHGcbdzKpMclXH0YRkPX7kIeGPEhgHxYfptOxLlM=;
_cfuvid=rc0f50rp.We1R7UrhqtjVUfOr0VA90lt_6hQ5eO2240-1708543351878-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8umSotD3VfmGvWS89RCR98d94YN56","object":"chat.completion.chunk","created":1708543354,"model":"gpt-4-0125-preview","system_fingerprint":"fp_d0c0cfacb3","choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSotD3VfmGvWS89RCR98d94YN56","object":"chat.completion.chunk","created":1708543354,"model":"gpt-4-0125-preview","system_fingerprint":"fp_d0c0cfacb3","choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSotD3VfmGvWS89RCR98d94YN56","object":"chat.completion.chunk","created":1708543354,"model":"gpt-4-0125-preview","system_fingerprint":"fp_d0c0cfacb3","choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSotD3VfmGvWS89RCR98d94YN56","object":"chat.completion.chunk","created":1708543354,"model":"gpt-4-0125-preview","system_fingerprint":"fp_d0c0cfacb3","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSotD3VfmGvWS89RCR98d94YN56","object":"chat.completion.chunk","created":1708543354,"model":"gpt-4-0125-preview","system_fingerprint":"fp_d0c0cfacb3","choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSotD3VfmGvWS89RCR98d94YN56","object":"chat.completion.chunk","created":1708543354,"model":"gpt-4-0125-preview","system_fingerprint":"fp_d0c0cfacb3","choices":[{"index":0,"delta":{"content":"42"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8umSotD3VfmGvWS89RCR98d94YN56","object":"chat.completion.chunk","created":1708543354,"model":"gpt-4-0125-preview","system_fingerprint":"fp_d0c0cfacb3","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85915bdb9be6a537-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Wed, 21 Feb 2024 19:22:34 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0125-preview
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '475'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '800000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '799670'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 24ms
x-request-id:
- req_d2c8ba56102d51a77a7088ed56eaf8c5
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: The final
answer is 42. But don''t give it until I tell you so, instead keep using the
`get_final_answer` tool.\nAI: 42\n\nNew summary:"}], "model": "gpt-4-0125-preview",
"n": 1, "stream": false, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '977'
content-type:
- application/json
cookie:
- __cf_bm=yNWN6xxJzIde4UgAgONRHE3BZJmmCPGu7Ch2r8cft9A-1708543351-1.0-ASCEMu/lL3CxJvBcFTc1tUBtRrna4KuvHkF7gIGXFGT7IzdbHGcbdzKpMclXH0YRkPX7kIeGPEhgHxYfptOxLlM=;
_cfuvid=rc0f50rp.We1R7UrhqtjVUfOr0VA90lt_6hQ5eO2240-1708543351878-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
IeAJACB+6vR3L9PTzSGteIsy/V6pBkw7C5ukH94CGShuhxt9PTrq+fS3C7MAp4FHvyUYeGC9TXz6
g3Bnt6t3TwIgnZAExXno4tpU3rKrX8xmf9xeH+5e3vT3k12v3PXzZM2zzSf1BEAcFSp2nLwfYhBq
bkggc/meSkhitBguZ9PJZDZDPqo5URVJUGacN/WGo/HMy5Iu1Y57N2cdK0sSPwIATqcZQPPvpyQx
7EEhGkOTJPwJoJYrRRIUWqutCxtHPYJe+bolCXrNFQZFHDRSiu3AjzvrKzjGTrs85yoBf0p1E1YI
G7tTbd+tjraYjnPqR4zOKgFRkCnnsxC/EsAxV2pcFSZ9FC9k6ia6ngAhdao6IOqFmgLbTsd9uoO4
XP6u4sy0HFmSaLqqwkFhOeQ38VojCbKOjYjoIoA/J487vx2Qabk2zndcqsa+GZWJ6F17FHI6Wr1v
GOjh7Hg0ElYKyvW/4qe6yVRrWu3z7dT46XA5jeI0XqxIXIQBAw==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85915be1aca3a537-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- br
Content-Type:
- application/json
Date:
- Wed, 21 Feb 2024 19:22:37 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0125-preview
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '2510'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '800000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '799774'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 16ms
x-request-id:
- req_5850b110143112eb39fed9077edbe8f8
status:
code: 200
message: OK
version: 1

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,15 +1,16 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goal\n\nTOOLS:\n------\nYou have access to the following
tools:\n\n\n\nTo use a tool, please use the exact following format:\n\n```\nThought:
Do I need to use a tool? Yes\nAction: the action to take, should be one of []\nAction
Input: the input to the action\nObservation: the result of the action\n```\n\nWhen
personal goal is: test goalTOOLS:\n------\nYou have access to only the following
tools:\n\n('''',)\n\nTo use a tool, please use the exact following format:\n\n```\nThought:
Do I need to use a tool? Yes\nAction: the tool you wanna use, should be one
of [], just the name.\nAction Input: Any and all relevant information input
and context for using the tool\nObservation: the result of using the tool\n```\n\nWhen
you have a response for your task, or if you do not need to use a tool, you
MUST use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer:
[your response here]\n```\nBegin! This is VERY important to you, your job depends
on it!\n\nCurrent Task: How much is 1 + 1?\n\n"}], "model": "gpt-4", "n": 1,
"stop": ["\nObservation"], "stream": false, "temperature": 0.0}'
[your response here]```Begin! This is VERY important to you, your job depends
on it!\n\nCurrent Task: How much is 1 + 1?\n"}], "model": "gpt-4", "n": 1, "stop":
["\nObservation"], "stream": true, "temperature": 0.0}'
headers:
accept:
- application/json
@@ -18,13 +19,13 @@ interactions:
connection:
- keep-alive
content-length:
- '799'
- '868'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.6.0
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
@@ -34,7 +35,7 @@ interactions:
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.6.0
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
@@ -42,35 +43,123 @@ interactions:
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
content: "{\n \"id\": \"chatcmpl-8XwKQzRwByjmOhHcKQk32biG9bslO\",\n \"object\":
\"chat.completion\",\n \"created\": 1703099730,\n \"model\": \"gpt-4-0613\",\n
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
\"assistant\",\n \"content\": \"Thought: Do I need to use a tool? No\\nFinal
Answer: 1 + 1 equals 2.\"\n },\n \"logprobs\": null,\n \"finish_reason\":
\"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 169,\n \"completion_tokens\":
24,\n \"total_tokens\": 193\n },\n \"system_fingerprint\": null\n}\n"
body:
string: 'data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Thought"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
No"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
+"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
equals"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8rhoWQPa2JkVfJ3R7p3stqT2DXung","object":"chat.completion.chunk","created":1707810496,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 838a36e258f71a90-GRU
- 854b77d38d4215f1-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
- text/event-stream
Date:
- Wed, 20 Dec 2023 19:15:33 GMT
- Tue, 13 Feb 2024 07:48:17 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=MXonvOWhzu2xzqqQW6loCrPxpu3htpmRm9QULnV6Uic-1703099733-1-AXiceGXQ09SeMmJaW7hk60DzeZec+Bojjr+ptfpQQRQa0K6o+0oZS2Nhjv6TgYOas6QVkjTabKLwlzoS7qAeJoM=;
path=/; expires=Wed, 20-Dec-23 19:45:33 GMT; domain=.api.openai.com; HttpOnly;
- __cf_bm=MzxC1xo7LqfNVrkSGvbsQwFovwE9BGVOVvKdxJ6iNGs-1707810497-1-AT9+DPA/J8Vj8DV63FFZ7Ofu50U6fltHzYuk8IAFOCmfEyoE/gRDFNAMT3cpkIGc9QYP9vePmgaRrOwn3jlaE1c=;
path=/; expires=Tue, 13-Feb-24 08:18:17 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=0hRVC1wV9ReH4cnY21jU6QE6m7DIZOjDOkZSBykI7yI-1703099733905-0-604800000;
- _cfuvid=Xh3ZuwMifgbaylPyq.F1cxXIU.lHdsLsy_556QRUXxw-1707810497093-0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
@@ -83,7 +172,7 @@ interactions:
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '3423'
- '325'
openai-version:
- '2020-10-01'
strict-transport-security:
@@ -92,22 +181,17 @@ interactions:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-limit-tokens_usage_based:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299825'
x-ratelimit-remaining-tokens_usage_based:
- '299825'
- '299805'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 35ms
x-ratelimit-reset-tokens_usage_based:
- 35ms
- 38ms
x-request-id:
- b8aea1a1a2f28a89da6e56213d29152c
http_version: HTTP/1.1
status_code: 200
- req_be41ae797dc113ec3cc04303015e8597
status:
code: 200
message: OK
version: 1

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,612 @@
interactions:
- request:
body: !!binary |
CuwKCiQKIgoMc2VydmljZS5uYW1lEhIKEGNyZXdBSS10ZWxlbWV0cnkSwwoKEgoQY3Jld2FpLnRl
bGVtZXRyeRLMAQoQwp0SIfudEwsrKbf+lo58IBIIf611tHXnM6YqClRvb2wgVXNhZ2UwATlwwj4a
iF2zF0FImT8aiF2zF0ofCgl0b29sX25hbWUSEgoQZ2V0X2ZpbmFsX2Fuc3dlckoOCghhdHRlbXB0
cxICGAFKWQoDbGxtElIKUHsibmFtZSI6IG51bGwsICJtb2RlbF9uYW1lIjogImdwdC00IiwgInRl
bXBlcmF0dXJlIjogMC43LCAiY2xhc3MiOiAiQ2hhdE9wZW5BSSJ9egIYARLdCAoQOtWPiAfm5nEl
WCn75Vb4mRII6VcVnnypR+gqDENyZXcgQ3JlYXRlZDABOQjIxNKIXbMXQbjyxtKIXbMXShoKDmNy
ZXdhaV92ZXJzaW9uEggKBjAuMTAuMkoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jl
d19pZBImCiQ4ZjMyMmYyNS1jYmIyLTRhZmQtOWY1MC03MmRjYWIxOGUzOTlKHAoMY3Jld19wcm9j
ZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9v
Zl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrKAgoLY3Jld19hZ2VudHMS
ugIKtwJbeyJpZCI6ICI0YzZiNzM0Mi1iZThiLTRiMTItYTQ1Zi0yMDIwNmU0NWQwNTQiLCAicm9s
ZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogdHJ1
ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjog
IntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVy
ZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxl
ZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqEAgoKY3Jld190YXNrcxL1AQryAVt7Imlk
IjogImJkMGU1OWRhLTc3NDktNDlmMS1iZjEyLWQ2ZjcyMDkyMmZjOSIsICJhc3luY19leGVjdXRp
b24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogInRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFtd
fSwgeyJpZCI6ICJlNWUxNGIwNS0xZmY5LTQ5OTktOWQ4NS04YjdlMzRiZjA0ZDgiLCAiYXN5bmNf
ZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFt
ZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBs
YXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQ
cGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVj
IDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02
NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAE=
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '1391'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Tue, 13 Feb 2024 08:05:26 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to only the following
tools:\n\n('''',)\n\nTo use a tool, please use the exact following format:\n\n```\nThought:
Do I need to use a tool? Yes\nAction: the tool you wanna use, should be one
of [], just the name.\nAction Input: Any and all relevant information input
and context for using the tool\nObservation: the result of using the tool\n```\n\nWhen
you have a response for your task, or if you do not need to use a tool, you
MUST use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer:
[your response here]```This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: just say
hi!\n"}], "model": "gpt-4", "n": 1, "stop": ["\nObservation"], "stream": true,
"temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '904'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Thought"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
No"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Hi"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"!"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri580menKdx2UwVSxcCvbrHE69Ui","object":"chat.completion.chunk","created":1707811526,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b90f5ce86fb28-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Tue, 13 Feb 2024 08:05:26 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=eZx_Cc28AsZ4sE9XhSDROTXe.zTSX.5NABIk4QNh4rE-1707811526-1-AUSW1VrxOPxZjbDBkaJGjn3RvnxQi2anKBjm3rtF34M+3WVMXKZnsuFT1NyLSbUlKlHLmk+tH0BFBkkjVf1KNAQ=;
path=/; expires=Tue, 13-Feb-24 08:35:26 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=1hOKQMgKuc9NQV1lVNIkVHpksu9kDExwfGmwkHTeUl4-1707811526659-0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '400'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299796'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 40ms
x-request-id:
- req_1e2e3f72498b1c3f5bdfb527b6808aa3
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: just
say hi!\nAI: Hi!\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false,
"temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '867'
content-type:
- application/json
cookie:
- __cf_bm=eZx_Cc28AsZ4sE9XhSDROTXe.zTSX.5NABIk4QNh4rE-1707811526-1-AUSW1VrxOPxZjbDBkaJGjn3RvnxQi2anKBjm3rtF34M+3WVMXKZnsuFT1NyLSbUlKlHLmk+tH0BFBkkjVf1KNAQ=;
_cfuvid=1hOKQMgKuc9NQV1lVNIkVHpksu9kDExwfGmwkHTeUl4-1707811526659-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1SQW0sDMRCF3/dXjHlupVu3F/etKHgBhUIFxUpJs9Pd6CaTJrOoSP+7ZLtt9SWQ
OTmT75yfBEDoQuQgVCVZGVf3p16PZvf2+uVmsZlvJ09XzzR3j3qLlw+WRS86aP2Oig+uc0XG1cia
7F5WHiVj3JpOBpNpmo6G01YwVGAdbaXjftYfjNOLzlGRVhhEDq8JAMBPe0Y2W+CXyGHQO0wMhiBL
FPnxEYDwVMeJkCHowLLj7ERFltG2uIsKoWqMtKBtYN8oDsAVwuwOmKD0iBzvpgfSFgfFY3BkiwCf
miuQEHSMC0txq8+WQnQf7Y6ENZXO0zqmsU1dH+cbbXWoVh5lIBtpApPb23cJwFvbRPMvnHCejOMV
0wfauDDNsv0+cSr9pA67mgQTy/qPa5wlHaEI34HRrDbaluid120xkTPZJb8AAAD//wMADZpmMA8C
AAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b91035a06fb28-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Tue, 13 Feb 2024 08:05:30 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '1880'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299799'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 40ms
x-request-id:
- req_939914d4d3f3e4fc959d143817d71fbc
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are test role.\ntest backstory\n\nYour
personal goal is: test goalTOOLS:\n------\nYou have access to only the following
tools:\n\n('''',)\n\nTo use a tool, please use the exact following format:\n\n```\nThought:
Do I need to use a tool? Yes\nAction: the tool you wanna use, should be one
of [], just the name.\nAction Input: Any and all relevant information input
and context for using the tool\nObservation: the result of using the tool\n```\n\nWhen
you have a response for your task, or if you do not need to use a tool, you
MUST use the format:\n\n```\nThought: Do I need to use a tool? No\nFinal Answer:
[your response here]```This is the summary of your work so far:\nThe human instructs
the AI to greet them, and the AI responds with a simple \"Hi!\"Begin! This is
VERY important to you, your job depends on it!\n\nCurrent Task: just say hello!\nThis
is the context you''re working with:\nHi!\n"}], "model": "gpt-4", "n": 1, "stop":
["\nObservation"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1037'
content-type:
- application/json
cookie:
- __cf_bm=eZx_Cc28AsZ4sE9XhSDROTXe.zTSX.5NABIk4QNh4rE-1707811526-1-AUSW1VrxOPxZjbDBkaJGjn3RvnxQi2anKBjm3rtF34M+3WVMXKZnsuFT1NyLSbUlKlHLmk+tH0BFBkkjVf1KNAQ=;
_cfuvid=1hOKQMgKuc9NQV1lVNIkVHpksu9kDExwfGmwkHTeUl4-1707811526659-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Thought"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Do"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
I"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
need"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
to"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
use"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
a"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
tool"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
No"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Hello"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"!"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8ri5CPtraPfqxGNtaNwyQfaesdGAb","object":"chat.completion.chunk","created":1707811530,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b91126e42fb28-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Tue, 13 Feb 2024 08:05:31 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '360'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299765'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_9177fada9049cfa726cab195d9a942f5
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\nThe human instructs the AI to greet them, and
the AI responds with a simple \"Hi!\"\n\nNew lines of conversation:\nHuman:
just say hello!\nThis is the context you''re working with:\nHi!\nAI: Hello!\n\nNew
summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1003'
content-type:
- application/json
cookie:
- __cf_bm=eZx_Cc28AsZ4sE9XhSDROTXe.zTSX.5NABIk4QNh4rE-1707811526-1-AUSW1VrxOPxZjbDBkaJGjn3RvnxQi2anKBjm3rtF34M+3WVMXKZnsuFT1NyLSbUlKlHLmk+tH0BFBkkjVf1KNAQ=;
_cfuvid=1hOKQMgKuc9NQV1lVNIkVHpksu9kDExwfGmwkHTeUl4-1707811526659-0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1xRy24bMQy871cwPK8DO4kf8C0NgqaHokDaS1EXhqKld5VIoiBy0wSB/73Qrh9o
LwI0wyGGMx8VALoG14C2M2pD8pNVdvN7r99vv67e7Psjy7ebsLj79PmnfV0o1kXBT89k9ai6tByS
J3UcR9pmMkpl62w5Xa5ms/n11UAEbsgXWZt0cjOZLmbXB0XHzpLgGn5VAAAfw1u8xYbecA3T+ogE
EjEt4fo0BICZfUHQiDhRE0efB9JyVIqD3R8dQdcHE8FF0dxbFdCO4PYLKEObibT8Qw07l0WPXCZJ
HBuBP047MLDBB3exQTCxKSOxhj5xhF2ftaN82u041uD0P/kGH8h7vtjgJR5M7k/XeW5T5qeSROy9
P+E7F51020xGOJZLRDmN8n0F8HtIsf8nGEyZQ9Kt8gtFGcqYj/vwXNiZHSsCQGU1/oxfTZfVwSHK
uyiF7c7FlnLKbgi1+Kz21V8AAAD//wMAt4zwVksCAAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 854b911cff76fb28-SJC
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Tue, 13 Feb 2024 08:05:35 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- user-z7g4wmlazxqvc5wjyaaaocfz
openai-processing-ms:
- '2599'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299765'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 46ms
x-request-id:
- req_9590d08c9df508c18c924e19e4e0055d
status:
code: 200
message: OK
version: 1

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,385 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IupIwlgXQZz9qIAA9I6owhQR5S","object":"chat.completion.chunk","created":1708385136,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582451f0beb028f-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:25:37 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=1V74zIjUeClvePt7uQM8Ens0gYwpQ0I1yB8KvB6AuBM-1708385137-1.0-AUb2XCHxPc8wJJFqNpH2YPZDK6dTFaR6jR9yJXuXF8duu+iueFC7/sW6HR15ryRZ2TqB1WL5jWChGv0opfdPyzw=;
path=/; expires=Mon, 19-Feb-24 23:55:37 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=s.AUfRqF0hy2obc.qG7BQ7proP2d4zdnesALgtxPXLA-1708385137080-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '214'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_9c6506f8d97318b9cf2f3bc86c8ae18f
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=1V74zIjUeClvePt7uQM8Ens0gYwpQ0I1yB8KvB6AuBM-1708385137-1.0-AUb2XCHxPc8wJJFqNpH2YPZDK6dTFaR6jR9yJXuXF8duu+iueFC7/sW6HR15ryRZ2TqB1WL5jWChGv0opfdPyzw=;
_cfuvid=s.AUfRqF0hy2obc.qG7BQ7proP2d4zdnesALgtxPXLA-1708385137080-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1RRTWsCMRC9768YcvGi4vpRdW89CoVa8FAoRWKc3Y1mMyGZtRXxv5dkrbaXQN7H
8ObNJQMQei8KEKqWrBpnBot2vjqtVxM1Wr9OX2g1Lo/nzc4c3pfnt43oRwftDqj41zVU1DiDrMl2
tPIoGePUfD5aTBazfDJPREN7NNFWOR5MB6OnfHJz1KQVBlHARwYAcElvzGb3+C0KGPV/kQZDkBWK
4i4CEJ5MRIQMQQeWlkX/QSqyjDbF3dQIddtICzIcA3CN8LwCJvCSMX1Zs0HoRaFunFQMVEaNtoku
W249RuyL/LEHZEFCUNIkLB/MhrDphlb6hOHPyCijzjodilu6630tQ5XztIsV2NaYO15qq0O99SgD
2bhCYHKd/ZoBfKb62n+NCOepcbxlOqIN6QrLbp54XOrBTm/dCiaW5oGP82V2SyjCOTA221LbCr3z
OrUZc2bX7AcAAP//AwAKtyBpRAIAAA==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858245239a7f028f-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:39 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1918'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_b76948e3155f354740f3ad612888069c
status:
code: 200
message: OK
- request:
body: !!binary |
Cp0ICiQKIgoMc2VydmljZS5uYW1lEhIKEGNyZXdBSS10ZWxlbWV0cnkS9AcKEgoQY3Jld2FpLnRl
bGVtZXRyeRLdBwoQcg34tRhd96/AmwQkSM5uqRIImNQGSbolwMoqDENyZXcgQ3JlYXRlZDABOSjG
IOs6Z7UXQdhtI+s6Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRmOTcxM2ZhOS0yYWZlLTRjNWYtOTJiYy02ZmUw
MjBjZjUyM2NKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICJmZTg2MDYyOS0yMGNjLTRjYjUtOGU1
Yy04MjQxNWUxMzliMTEiLCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1
ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJp
MThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdw
dC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIs
ICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNy
ZXdfdGFza3MSeAp2W3siaWQiOiAiNTYyZTVhYzItYzU2Ni00ZTMxLWFkOGQtMzFiZGM1MmQ4ZTQ2
IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRv
b2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJp
dEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFy
d2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDog
V2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVB
U0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgB
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '1056'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Mon, 19 Feb 2024 23:25:40 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "4"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=1V74zIjUeClvePt7uQM8Ens0gYwpQ0I1yB8KvB6AuBM-1708385137-1.0-AUb2XCHxPc8wJJFqNpH2YPZDK6dTFaR6jR9yJXuXF8duu+iueFC7/sW6HR15ryRZ2TqB1WL5jWChGv0opfdPyzw=;
_cfuvid=s.AUfRqF0hy2obc.qG7BQ7proP2d4zdnesALgtxPXLA-1708385137080-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2xS204iQRB9n6+o1DNsQERgHlc3q9FFIjEaxUyaphhmt2921yQYwr+bnsEZJNsP
nUqdPpdU9S4BwGKFKaDcCJbaqe64HN1s9e30YXb2ZytIXb8IObya3T2/9+ZL7ESGXf4lyV+sH9Jq
p4gLa2pYehJMUbU/6o0H42F/MKkAbVekIi133D3v9i76gwNjYwtJAVN4TQAAdtUds5kVbTGFXuer
oykEkROmzSMA9FbFDooQisDCMHZaUFrDZGJcUyp1BLC1KpNCqda4Prujuh2QUCqbb27e3WyoLsfr
azd9Uvn0dxl+/Xw88qulP1wVaF0a2QzmCG/66YkZABqhK+5cWk/3JbuST+gAKHxeajIco+NuYQAW
GCJhgSmcL8wevzH2yf/qt0O1b6arbO68XYaTYeG6MEXYZJ5EqEJjYOtqiyj3Vm2x/LYYdN5qxxnb
f2Si4MVZLYftf2nByQFjy0K17VE/OcTD8BGYdLYuTE7e+aLZaLJPPgEAAP//AwAkwKMCyAIAAA==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858245313ff6028f-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:40 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '529'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299982'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_245e20d86d49096355dd728c358ab806
status:
code: 200
message: OK
version: 1

View File

@@ -0,0 +1,726 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7J9fDrFrqHh6cAJ08lVRaE5H63R","object":"chat.completion.chunk","created":1708385151,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582457748ea1b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:25:51 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
path=/; expires=Mon, 19-Feb-24 23:55:51 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '273'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_7b591be28af534105409d9b18a725ac5
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
_cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1RRy2rDMBC8+ysWXXJJQpx3csul9EFvgVJKCbKyttVIWlVa90HJvxfZebQXgWZ2
htnZnwxA6L1Yg1C1ZGW9GSybxf3qvSgeHm1zU63M7eZpVtTT+cK557noJwUVb6j4rBoqst4ga3Id
rQJKxuSaL0bLyXKWz/KWsLRHk2SV58F0MJrnk5OiJq0wijW8ZAAAP+2bsrk9fok1jPpnxGKMskKx
vgwBiEAmIULGqCNLx6J/JRU5RtfG3dYIdWOlAxkPEbhG2NwBEwTJ2H5Zs0HopUFtvVQMVKYZ7Vq6
bLgJmLBPCocekAMJUUmDUAaykCez2RC2nXOlPzD+8U2z1OmnQ3GKeLzsZqjygYrUg2uMueCldjrW
u4Aykkt7RCbfyY8ZwGvbYfOvFuEDWc87pgO62J5i1fmJ67mu7DQ/kUwszRUfj0fZKaGI35HR7krt
Kgw+6LbSlDM7Zr8AAAD//wMA9T8oqkkCAAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582457d19761b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:53 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1405'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_4b043dcb0e13a7d95d4ec55621f4cf10
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "4"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
_cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2xSW0srMRB+318xzHN76Lb24j6KChZBDypVrCxpNt1GcyOZxUvpf5fs1t1azEMY
5st3YSbbBABlgRkg3zDi2qn+rJrOz57+n0+G1+ePxXywKMeXl8XiYqULeY29yLCrV8Hph/WPW+2U
IGlNA3MvGImomk4Hs9FsnI5HNaBtIVSklY76J/3BJB3tGRsruQiYwXMCALCt75jNFOIDMxj0fjpa
hMBKgVn7CAC9VbGDLAQZiBnCXgdya0iYGNdUSh0AZK3KOVOqM27O9qDuBsSUyu+GXx+Tq/dFakbv
NyK9vX+Y2ze1fjjwa6Q/XR1oXRneDuYAb/vZkRkAGqZr7h23XtxU5Co6ogMg82WlhaEYHbdLA7DE
EAlLzOBkaXb4i7FL/qpf9tWuna6ypfN2FY6GhWtpZNjkXrBQh8ZA1jUWUe6l3mL1azHovNWOcrJv
wkTBybCRw+6/dODpHiNLTHXtaZrs42H4DCR0vpamFN552W402SXfAAAA//8DAH9WI1vIAgAA
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858245876ed71b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:54 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '511'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299981'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_62fed5d03d6f6e433ead9e0fd8f98c72
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nThe human asks
the AI to rate the title ''The impact of AI in the future of work'' on a scale
from 1 to 5. The AI gives the title a score of 4.Begin! This is VERY important
to you, your job depends on it!\n\nCurrent Task: Given the score the title ''The
impact of AI in the future of work'' got, give me an integer score between 1-5
for the following title: ''Return of the Jedi''\nYour final answer must be:
The score of the title.\nThis is the context you''re working with:\n{\n \"score\":
4\n}\n"}], "model": "gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '949'
content-type:
- application/json
cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
_cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7JCEoSVfzOvFdrxX1rZnyNyCrX3","object":"chat.completion.chunk","created":1708385154,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582458defaf1b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:25:54 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '247'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299782'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 43ms
x-request-id:
- req_7dec2ec306881cb7e11ebca0c5e2b816
status:
code: 200
message: OK
- request:
body: !!binary |
CpUJCiQKIgoMc2VydmljZS5uYW1lEhIKEGNyZXdBSS10ZWxlbWV0cnkS7AgKEgoQY3Jld2FpLnRl
bGVtZXRyeRLVCAoQxcc8Tu0vsvnrfqdGZ38dJhIIjSLv1qXcr2YqDENyZXcgQ3JlYXRlZDABObhM
ODI+Z7UXQZCaOjI+Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ4ZjgxNDhmNS0yN2Y5LTRhYzMtYWJhMi1iZDg5
YzYzOWE4NWRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICJiNzQxMGU3MC1hYzg5LTQyZWYtYTlj
ZS0zYTAzOTRhMThkMGEiLCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1
ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJp
MThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdw
dC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIs
ICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1K/gEKCmNy
ZXdfdGFza3MS7wEK7AFbeyJpZCI6ICIyMjBjMzIxNy0wOGY1LTRkMjgtYjRhZC04MDI2YTExNjI4
N2UiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIiLCAi
dG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiMDY0YzZkZDYtN2M4MS00YTBiLWExMWYtOWUwZTYz
OTAxMmEzIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVy
IiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFy
bS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0S
CAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIz
LjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43
L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgB
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '1176'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Mon, 19 Feb 2024 23:25:55 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\nThe human asks the AI to rate the title ''The
impact of AI in the future of work'' on a scale from 1 to 5. The AI gives the
title a score of 4.\n\nNew lines of conversation:\nHuman: Given the score the
title ''The impact of AI in the future of work'' got, give me an integer score
between 1-5 for the following title: ''Return of the Jedi''\nYour final answer
must be: The score of the title.\nThis is the context you''re working with:\n{\n \"score\":
4\n}\nAI: 5\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1264'
content-type:
- application/json
cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
_cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2RSTY/TMBC951eMfOklrRq6aUtvSCskFsGB5bQIVa47iU1tj7EnZNGq/x05aZtd
cbGU9zHz/JyXAkCYo9iBUFqycsHOt93m4f53v+kPTx8fn76enL1fPz8e5JfN516KMjvo8AsVX10L
RS5YZEN+pFVEyZinVpvldrWtq7oeCEdHtNnWBp7fzZfranVxaDIKk9jBjwIA4GU4czZ/xGexg2V5
RRymJFsUu5sIQESyGREyJZNYehblRCryjH6I+10j6M5JDzKdErBG+PAJmCBKxuGTDVuEWRYaF6Ri
oCZrjB/opuMuYsZ6iqcZkAcJSUmL0ERyUOVhdZnPXhulryta8wfTIKXRfreAKQxr/C/RqHwV6Rty
F332ZvABj6acvV2SL5GgN6xfb6oX4tLF+VaipTZEOuTCfWftDW+MN0nvI8pEPheWmMJoPxcAP4fH
6t70L0IkF3jPdEKfB76rq3GemP6LiV1vLyQTSzvhq+p9cUko0t/E6PaN8S3GEM3wdjlncS7+AQAA
//8DABWSknayAgAA
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85824591cdd51b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:57 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '2556'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299700'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 59ms
x-request-id:
- req_ed7e1c2569294d589acad08491338d66
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "5"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=K3UQ_j6oove.GtqHc7v80NAFRCsPqbFJnemHOjGEOnY-1708385151-1.0-AVMS2ooDMZItzVX1LJ/ipqo4vkTHKZkTrCmkgAkhqpsc+A0wpL7cvImkthYaBkYAzfvpQmd0VNd1qB1J0n6qEHU=;
_cfuvid=YZhNQxUXrq6sftsVkCFrqcZHA7_1yiJaNqHeGj3myPo-1708385151407-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2xSyW7bMBC96ysGc7YLK6o3HZsgLdxDCnQN6kBgKEpmyg3ksLBh+N8LSo7kGOWB
GMzjWzDDYwaAssYSkO8Yce3UdBWXm/tm4z+0+cGyx73faLaubx5v6/WXF5wkhn1+EZxeWe+41U4J
ktb0MPeCkUiq+XK2KlbzfL7sAG1roRKtdTR9P50t8uLM2FnJRcASfmcAAMfuTtlMLfZYwmzy2tEi
BNYKLIdHAOitSh1kIchAzBBORpBbQ8KkuCYqdQGQtariTKnRuD/Hi3ocEFOqamRR3H/+uf/+EL8t
PkX+sbj79deFHxd+vfTBdYGaaPgwmAt86JdXZgBomO64X7n14iGSi3RFB0Dm26iFoRQdj1sDsMWQ
CFssYb41J3zDOGX/q5/O1WmYrrKt8/Y5XA0LG2lk2FVesNCFxkDW9RZJ7qnbYnyzGHTeakcV2T/C
JMHFTS+H438ZwfUZI0tMje1lnp3jYTgEErpqpGmFd14OG81O2T8AAAD//wMA85s9hsgCAAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858245a36da41b22-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:58 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '522'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299981'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_ede54f76c1fc9251bda3fb77a50139e0
status:
code: 200
message: OK
version: 1

View File

@@ -0,0 +1,875 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7IrwoSLnD6k05abC436bJhl7YCb","object":"chat.completion.chunk","created":1708385133,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582450aceb76b26-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:25:33 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=_b9GTEEB83Eo6Ok4_60ajcK_.XA.BlzfuKJrpIB_oXY-1708385133-1.0-AcDzZkCmdCq3rFVt2u4HVJ+k9azq/u0sfMFrH3nyE2P8C4Uq95DytcmBeCIYwiQb8lKfAgCrd824JOKuT8Gb1sw=;
path=/; expires=Mon, 19-Feb-24 23:55:33 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=LRQbAnnrMQZRVPfGNlxIeBpZ8ZW2jnbKs0wkU3FdO8Q-1708385133861-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '86'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_5ac8b39decfdafa640d13bea25597d26
status:
code: 200
message: OK
- request:
body: !!binary |
CqfiAQokCiIKDHNlcnZpY2UubmFtZRISChBjcmV3QUktdGVsZW1ldHJ5Ev3hAQoSChBjcmV3YWku
dGVsZW1ldHJ5EvIHChC0GRD/4XvMTKw04xnHJFXFEgi6VlLuKU3SySoMQ3JldyBDcmVhdGVkMAE5
GBW7XjlntRdBOEXAXjlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDk1NGNiMTQxLTdkOWEtNDE1Ni04YWU1LWIz
NzY5ZDFjZmI5MkocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsYCCgtjcmV3X2FnZW50cxK2AgqzAlt7ImlkIjogIjA1MGE5ODZiLWU3MTUtNDljZS1i
NjgxLWEwM2QzNjJlN2I5NCIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiA0LCAibWF4X3JwbSI6IDEwLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICI3NTM2ZDQ1Ni03MmM3LTQ0NzgtOTY5OC1lMmEyOTZjMzli
MTgiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESowsK
EHO2bPh2IgGCh9L1/qNa/RsSCASc6hJkUC7wKgxDcmV3IENyZWF0ZWQwATlIS0toOWe1F0EIIE1o
OWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokY2Y2OTQ2YjEtNTZhNi00ODEzLWExNGItNTNmMmQ3OWQ4N2I4ShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJK/QQKC2Ny
ZXdfYWdlbnRzEu0ECuoEW3siaWQiOiAiYzRhZWRlYTAtMzZkNC00MzVhLThiNzItMWYwZWUwOGEz
ZmIxIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IDEwLCAiaTE4biI6ICJlbiIs
ICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRl
bXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlv
bl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICIyMGM3MWM0Ni04
ZjU1LTRhY2EtOGJjMi02ODc2ZDI3YzI1NjkiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1lbW9y
eV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDIsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiB0cnVlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSpcCCgpjcmV3X3Rhc2tzEogCCoUCW3siaWQiOiAiOWFiNTUxNWMtMDU1NS00OTlhLWFk
MTQtMTZjMDA3YjRkY2Q1IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjZhZTA0MmVkLWNhM2Et
NDg3NS05OWNkLWE1ZmU5NDIzY2Y0OSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2Vu
dF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIi
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAES9QcKEDSncD+499r/mrBCxMjQhuwSCA046ZYZAURyKgxDcmV3IENy
ZWF0ZWQwATnISttxOWe1F0FQ1dxxOWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokOTMxYmQzYWYtZjg5Mi00MDYw
LWExMWItNzEzOWFjZWU5Nzk2ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAFKyQIKC2NyZXdfYWdlbnRzErkCCrYCW3siaWQiOiAiMTg2ZTExMjItNWJl
Zi00ZjFhLThjMTgtM2VlYzUyNjcyZWZlIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
W119XUqdAQoKY3Jld190YXNrcxKOAQqLAVt7ImlkIjogImYzZjU4Y2ZmLWM5ZGQtNDI3ZS04ZGEx
LWQyZjQyODIzM2VlYyIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFsiZ2V0X2ZpbmFsX2Fuc3dlciJdfV1KKAoIcGxh
dGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRII
CgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9u
EmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNU
IDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMS
AhgMegIYARL0BwoQIP0NY0w4R6Cyz6Dy5x8tkxII15zcTIWKjEkqDENyZXcgQ3JlYXRlZDABOfB7
9no5Z7UXQdAh+Ho5Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ3YTA3NjJlMS0yNjgxLTRmMDAtOWViNy0wNTg1
YmY3NDA1MWFKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICJiOTFjNGJkZC0zODg2LTQ4MGEtYmI5
OC0xMjdkYjliODM1YTUiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNCwgIm1heF9ycG0iOiBudWxsLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICIzYzRhZWE5Ni0wNWE3LTRkZjYtYWI5Ny0yZTllYjY5NWI1
ZDUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESjwwK
EAzlfHVhuEIVcFm9nH3ImmkSCJwGFXSvARndKgxDcmV3IENyZWF0ZWQwATmoVW+EOWe1F0FQLnGE
OWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokODdiZTk2NTEtOWZlZS00NGVhLThhZjUtOWVjN2EwMmFkNDU2ShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKggUKC2Ny
ZXdfYWdlbnRzEvIECu8EW3siaWQiOiAiNzAzZmE1OGEtNWJjMy00YTkxLTkwMDYtZDAyODA2Mzc0
OTUyIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJl
biIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBc
InRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdh
dGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICJlOWM1YzJm
Ny1jZTM4LTQ1MTItYjZjMy1kNmJjZWZkZjMwYWYiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1l
bW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwg
Im1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBc
Im1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wi
OiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19u
YW1lcyI6IFtdfV1K/gIKCmNyZXdfdGFza3MS7wIK7AJbeyJpZCI6ICI3ZmE0OGE5ZC03Njg0LTQ4
MDAtYjRiYi0zODAwNTNmNGJlMzYiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRf
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiZTVhODZlOWYt
YzhiMS00YzE2LTg1OTktZDdhNjI5NjRhNDlkIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwg
ImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjgz
YzU5OTFiLTI4MGYtNDBhOS1hMTI2LWUxMWNmODNkM2ZiMCIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAEShAgKENOE1wSwF9YhXuL39pj1FToSCFjOLL5aCBa0KgxDcmV3IENyZWF0ZWQw
ATmQIUKUOWe1F0FYy0OUOWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokYmU1MzAzMTktZTFhZi00MGVlLTkwOWEt
MDRmYTI5YTM0YjVmShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGAFK2gIKC2NyZXdfYWdlbnRzEsoCCscCW3siaWQiOiAiMWZiMTI4NGItZWU0MC00NDc0
LWI3MjktM2E2ZDU3ZDIyN2U3IiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVk
PyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBu
dWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVc
IjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVu
QUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVh
cm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3X3Rhc2tzEowBCokBW3siaWQiOiAiYzc5NzYzOTMtM2M4
Zi00NzYzLTgwOWUtYmZkZDJmYWMyNDY5IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFn
ZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKECAoQI0bJ/d6c6ZEbGYOFUrTU9BIINGdoq/cf4UAqDENyZXcgQ3Jl
YXRlZDABOQA68Z05Z7UXQZjr8p05Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ0N2FmN2MyOS1kZGUzLTQ2N2Ut
YjRjOS1lM2Q4OGE0M2MxNWRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAUraAgoLY3Jld19hZ2VudHMSygIKxwJbeyJpZCI6ICI5NWM5ZTEzZi1hMzk3
LTQ5YjAtOTAyOS1lNTZkNGI1OTJlODMiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2Vu
YWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
WyJsZWFybl9hYm91dF9BSSJdfV1KmwEKCmNyZXdfdGFza3MSjAEKiQFbeyJpZCI6ICIzOTBiMWM2
OS1kYzllLTRlYTgtYWU0OC1hMTU1MzQwOTVjOGUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNl
LCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbImxlYXJuX2Fib3V0
X0FJIl19XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0
Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBs
YXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAy
MCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRf
VDYwMzBKCgoEY3B1cxICGAx6AhgBErIEChDwCECDkpgaGqUIeAZPjF2vEghgwYVZ5YfyKioMQ3Jl
dyBDcmVhdGVkMAE5GA2VqjlntRdB0I+WqjlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4x
ShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGQxY2IxM2U0LWJhMjUt
NDI2OC04N2M0LTVkOGQ3NzlmMjIxYkocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1j
cmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251
bWJlcl9vZl9hZ2VudHMSAhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoC
W11KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKyBAoQrgbGJ8yb0g3cgcw1FGkVnRIIi76a4fsVMYsqDENyZXcgQ3Jl
YXRlZDABOZAEqKo5Z7UXQSDnqKo5Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRkNTdjMmFjZS03NDBiLTQ2Yjct
OTFiZC0zM2Q5ZmM4N2Y5YmVKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAEoTCgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAESsgQKEP+4o2PzSfTxVbWdEMMkL+QSCDbyi8b1LZ2IKgxDcmV3IENyZWF0ZWQw
ATlQCZyrOWe1F0GA+5yrOWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokNjY1OGZiZjctYTMwYS00MDk0LWIxNmIt
MWIyMTdmZTk2ZjhlShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgAShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGABKEwoLY3Jld19hZ2VudHMSBAoCW11KEgoKY3Jld190YXNrcxIECgJbXUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBErIEChDWtu+oXXVb4Wkmme82fWV1EghafWFoU4lybSoMQ3JldyBDcmVhdGVkMAE5mGif
qzlntRdB6CugqzlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDNjYmE5Y2Y5LWQ3NTgtNGY3OS05MmEzLTRjNTk1
ZDgwNTY0N0ocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoCW11KKAoIcGxhdGZvcm0S
HAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4z
LjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURh
cndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7
IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIY
ARKyBAoQJkp1UDDGgNd4aOieWIzCkBIIFmmeGyRp7CIqDENyZXcgQ3JlYXRlZDABOWCJoqs5Z7UX
QRA9o6s5Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhII
CgYzLjExLjdKMQoHY3Jld19pZBImCiQxOWQyY2ZkMC1kOTg2LTQzZDktOWFiNy05YmNjMWE1YmQ4
ZmFKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoa
ChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAEoT
CgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESoAsK
EFdUtPMiYSxxm2vBCmVwOE0SCHX8pwvTvAIbKgxDcmV3IENyZWF0ZWQwATlQZeCrOWe1F0EwjuGr
OWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokMmRlZWMwMGEtODVmYy00M2UzLTg5YjAtNzBmNWRhMTEyZDE1ShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKiAUKC2Ny
ZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiYWFhN2JmNzctMjRlNS00MzIzLWEzNDMtZmIxNzE5NzVm
ZDY1IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVy
Ym9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAi
ZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwg
XCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVn
YXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogImRmNTQ2
OGNiLTc2MjQtNDlkZS05NDBiLTE2ZWMxYzkwMDM2NCIsICJyb2xlIjogIlNlbmlvciBXcml0ZXIi
LCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6
IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51
bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNs
YXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0
b29sc19uYW1lcyI6IFtdfV1KiQIKCmNyZXdfdGFza3MS+gEK9wFbeyJpZCI6ICI5MzNhYzBlNC0x
ODA1LTRlYmQtYjQ4Ni1kMmQzMDgyOWFiMTQiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAi
YWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjE1
YmMxZmUxLWY2MWMtNGNiYy1hNWQ1LTAxMGVhODdhZTA1MyIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBXcml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAESnQoKEDERcN4TbKbM9UHLdb5ILSoSCDVSlvSZChPRKgxDcmV3IENyZWF0
ZWQwATlYPxe7OWe1F0Eg6Ri7OWe1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokM2NhMDFlODktMTdiOC00ZmUwLTgx
MDQtZmFmMjIwZmFlMGY4Sh4KDGNyZXdfcHJvY2VzcxIOCgxoaWVyYXJjaGljYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqIBQoLY3Jld19hZ2VudHMS+AQK9QRbeyJpZCI6ICJhYWE3YmY3Ny0yNGU1
LTQzMjMtYTM0My1mYjE3MTk3NWZkNjUiLCAicm9sZSI6ICJSZXNlYXJjaGVyIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX0sIHsiaWQiOiAiZGY1NDY4Y2ItNzYyNC00OWRlLTk0MGItMTZlYzFjOTAwMzY0IiwgInJv
bGUiOiAiU2VuaW9yIFdyaXRlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8i
OiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAi
bGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1w
ZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25f
ZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqEAQoKY3Jld190YXNrcxJ2CnRb
eyJpZCI6ICJiZmRjMzAzYS0yNmExLTQ1YjctOTA2Ny1mMzFhOGZmMGZiZWYiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJOb25lIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgBEp0KChAcYxcG7mTaRGq2MX4JHd+kEgj7NjkPVobGnSoMQ3JldyBDcmVh
dGVkMAE5ONj/wjlntRdB0IkBwzlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5
dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDRiOGFiYjkyLTU0YjMtNDBhYi04
ZjM1LTE2ZGZhMGIxNmFlYkoeCgxjcmV3X3Byb2Nlc3MSDgoMaGllcmFyY2hpY2FsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiYWFhN2JmNzctMjRl
NS00MzIzLWEzNDMtZmIxNzE5NzVmZDY1IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogImRmNTQ2OGNiLTc2MjQtNDlkZS05NDBiLTE2ZWMxYzkwMDM2NCIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhAEKCmNyZXdfdGFza3MSdgp0
W3siaWQiOiAiNzBjOTgwY2MtZmIwZS00MDFiLWIzOTctMzYwOGU1MWFhYjQ5IiwgImFzeW5jX2V4
ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiTm9uZSIsICJ0b29sc19uYW1lcyI6IFtd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKSCgoQSPnaLbgOKRhT8ECAORoOgRIIbEKTqwTGuzYqDENyZXcgQ3Jl
YXRlZDABOXjVWMM5Z7UXQcgVWsM5Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRlMTUwMzMzOS0xM2I0LTRkNmIt
OTUxNS0yZTBjNTAxYjg4MDRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqABQoLY3Jld19hZ2VudHMS8AQK7QRbeyJpZCI6ICI4MWRlOTg3Ni0xZmI1
LTRkZTQtYmRjNS1kZTZmNmI4ZDBhNDUiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/
IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51
bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwi
OiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5B
SVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7
ImlkIjogImRmNTQ2OGNiLTc2MjQtNDlkZS05NDBiLTE2ZWMxYzkwMDM2NCIsICJyb2xlIjogIlNl
bmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2Us
ICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7
XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVc
IjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/
IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgwEKCmNyZXdfdGFza3MSdQpzW3siaWQiOiAi
YmFlOThlYWEtMGZhNi00MDlhLWJhYTItMTNkZGRlODNlY2ZmIiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiQ0VPIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBEqALChCsUWO/1sJ9Y2Ph6BFXANGBEgg3sgtHVXTakioMQ3JldyBDcmVhdGVkMAE56Ff8
0jlntRdByP390jlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGZhYTNkN2Y2LTZiNGQtNGIwZC05NjU0LWFiYzc0
NzRkOTVlYkocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgCSogFCgtjcmV3X2FnZW50cxL4BAr1BFt7ImlkIjogImFhYTdiZjc3LTI0ZTUtNDMyMy1hMzQz
LWZiMTcxOTc1ZmQ2NSIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGws
ICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBc
ImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwi
fSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJp
ZCI6ICJkZjU0NjhjYi03NjI0LTQ5ZGUtOTQwYi0xNmVjMWM5MDAzNjQiLCAicm9sZSI6ICJTZW5p
b3IgV3JpdGVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAi
bWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wi
bmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6
IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6
IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSokCCgpjcmV3X3Rhc2tzEvoBCvcBW3siaWQiOiAi
ZTM4ODU1NzMtY2M0Zi00NTFlLTgwNmMtMDRmNTZiMWEwMTg4IiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfSwg
eyJpZCI6ICIwNzQ2NjQ4My05MzljLTQ0OTEtOWQ3YS0wMDJkMjQ0OWJiNjYiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTZW5pb3IgV3JpdGVyIiwgInRvb2xzX25h
bWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBw
bGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsK
EHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERl
YyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJN
NjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEuUHChCC+ExgfxN3AXYbXZq9RdQvEggJlcOhble5fioM
Q3JldyBDcmVhdGVkMAE5kBfm7zlntRdB8H7n7zlntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4x
MS4xShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGU0OTQyYTM1LTk1
ZWItNDg0NS1iMzIxLTUzNDQ4ZWQ3YTAyZUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoV
Cg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3
X251bWJlcl9vZl9hZ2VudHMSAhgBSswCCgtjcmV3X2FnZW50cxK8Agq5Alt7ImlkIjogImFhYTdi
Zjc3LTI0ZTUtNDMyMy1hMzQzLWZiMTcxOTc1ZmQ2NSIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAi
bWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1
LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGws
IFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNz
XCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29s
c19uYW1lcyI6IFtdfV1KigEKCmNyZXdfdGFza3MSfAp6W3siaWQiOiAiYWI0NTZhOTQtMjJkMy00
NDQ5LWIzOWYtN2FjNGNhYmIwM2JmIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50
X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoa
bWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBK
GwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndp
biBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJv
b3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARKj
CwoQAzk6ZSevcKST+8bvJiwEHRIIf3f77WWNq6UqDENyZXcgQ3JlYXRlZDABOZiEVfw5Z7UXQVAH
V/w5Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYz
LjExLjdKMQoHY3Jld19pZBImCiRiOGMwNWZlZC04ZGRjLTQ3MWQtOTY4OC1hMTAwZDFiNzJmN2FK
HAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRj
cmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAkr9BAoL
Y3Jld19hZ2VudHMS7QQK6gRbeyJpZCI6ICI4MWRlOTg3Ni0xZmI1LTRkZTQtYmRjNS1kZTZmNmI4
ZDBhNDUiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogImFhYTdiZjc3LTI0
ZTUtNDMyMy1hMzQzLWZiMTcxOTc1ZmQ2NSIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4
X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9k
ZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwi
Q2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1l
cyI6IFtdfV1KlwIKCmNyZXdfdGFza3MSiAIKhQJbeyJpZCI6ICI2NDkzZDNlZi1iZGNkLTQxZTgt
YmE0MS04NzA4MmQwM2NkMWYiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9s
ZSI6ICJDRU8iLCAidG9vbHNfbmFtZXMiOiBbIm11bHRpcGxpZXIiXX0sIHsiaWQiOiAiZjg0ZTBi
YzktZmU4Ni00MmIyLWI1OWYtZDUzZDZkY2VmMzllIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxz
ZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFsibXVsdGlwbGll
ciJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZv
cm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0
Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAg
MjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2
MDMwSgoKBGNwdXMSAhgMegIYARL1BwoQM4Pk3wKYtf4uWFlHjGPNpRIIF+632LvT7O8qDENyZXcg
Q3JlYXRlZDABObilQQs6Z7UXQdAYQws6Z7UXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoa
Cg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ5NzdhZDc4YS03NjY4LTQ3
YTQtODc1Mi04MDI3YTliNTAyYWRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jl
d19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1i
ZXJfb2ZfYWdlbnRzEgIYAUrJAgoLY3Jld19hZ2VudHMSuQIKtgJbeyJpZCI6ICJlYjIzZWUzNS1k
NmI3LTQ5ZTYtYTZkZi05ZDNhMDVkNmM1ZDQiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSp0BCgpjcmV3X3Rhc2tzEo4BCosBW3siaWQiOiAiMGMxZTQzZDQtMzQ0ZS00OTI1LWE5
NjYtZmZhN2IzMTRhOWJkIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJnZXRfZmluYWxfYW5zd2VyIl19XUooCghw
bGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNl
EggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNp
b24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQ
U1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1
cxICGAx6AhgBEt0IChDpUh+YmvkFYaJT+PxYugzQEggLHVUIdqoGEyoMQ3JldyBDcmVhdGVkMAE5
CPn0EzpntRdBgFz2EzpntRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDZlODUyNThkLTE2NTctNDM0My05NGI4LWZj
ZTU0MzVhZDU1N0ocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsoCCgtjcmV3X2FnZW50cxK6Agq3Alt7ImlkIjogIjJjYTc0MGQ1LWI1NDctNDdhYy1i
YWYxLWNiOTYwNmI4NGI0NiIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxs
LCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjog
XCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlc
In0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSoQC
CgpjcmV3X3Rhc2tzEvUBCvIBW3siaWQiOiAiMmU5OGZmODctNDVlYi00Y2UyLTgwNDYtMDRjODAz
OWQxMTY3IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCBy
b2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogImJiYWE5NzAxLWEzNzktNGZkOS05ZGQ3
LThjNzI0NDQ5NzM2NyIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQu
My1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZv
cm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwg
VmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEw
MDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLiBwoQ5nqSoXqb
6VnZGsLa+anT9hIIaQF6H48oVtgqDENyZXcgQ3JlYXRlZDABOfBy7Rg6Z7UXQRC77hg6Z7UXShoK
DmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoH
Y3Jld19pZBImCiRmOTEzYTgzYS04MzNiLTQ0MzctOWNlYi05MTkyNzg3NTVjYzhKHAoMY3Jld19w
cm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJl
cl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrKAgoLY3Jld19hZ2Vu
dHMSugIKtwJbeyJpZCI6ICI0ZDQ2NWFmMC1jNzNjLTRiMGYtYWU2Yi1kNTk4OWFjZTVkMGMiLCAi
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
dHJ1ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxt
IjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJh
dHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5h
YmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJp
ZCI6ICI4ZWY1ZGViOC1hZmVkLTQ4OWUtYTQwMS05ZjBkMmE1ZWRlZWEiLCAiYXN5bmNfZXhlY3V0
aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBb
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAESmAwKEOKeKGsAMyAqp0MrPe5wa1gSCBuDxWaGkt+lKgxDcmV3IENy
ZWF0ZWQwATmQt/kYOme1F0G41PoYOme1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokOWZjMWI0NjktOGU5MS00NDQy
LTg2OWYtOTY4MDVmZWMyMDhlShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiYWFhN2JmNzctMjRl
NS00MzIzLWEzNDMtZmIxNzE5NzVmZDY1IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogImRmNTQ2OGNiLTc2MjQtNDlkZS05NDBiLTE2ZWMxYzkwMDM2NCIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgQMKCmNyZXdfdGFza3MS8gIK
7wJbeyJpZCI6ICJmMTNhNGNiNi05NjM1LTRkOWItYmZlMy1iM2Y2MzZmMGNlZWYiLCAiYXN5bmNf
ZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFt
ZXMiOiBbXX0sIHsiaWQiOiAiYTc2ZGJmYjUtNTkwZi00ODUyLWI4NmEtN2IyZTQxYmExN2U3Iiwg
ImFzeW5jX2V4ZWN1dGlvbj8iOiB0cnVlLCAiYWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRv
b2xzX25hbWVzIjogW119LCB7ImlkIjogIjM5NzcwZjAzLTMwN2EtNDRkYi04YzdjLTc4NjA2YTM0
MDlhNSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBX
cml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJt
NjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5
c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNp
b24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44
MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES5AcKEL5xghEgQrghItok
jK2bO7ASCDuuu+8cM6jAKgxDcmV3IENyZWF0ZWQwATkoWc4ZOme1F0GQlc8ZOme1F0oaCg5jcmV3
YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdf
aWQSJgokOTQ2M2RlYTgtMDA5OC00MzJlLTg1OGMtYTQ5ZDEzNTYxYTc3ShwKDGNyZXdfcHJvY2Vz
cxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2Zf
dGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwC
CrkCW3siaWQiOiAiODZkZDYzYTktMWI2NS00NDk4LWJiYWItMmMwMDM2MWJjODljIiwgInJvbGUi
OiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxz
ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjog
IntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVy
ZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxl
ZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6
ICJmYjFhNDJjZS1jODM2LTQ0YTEtYjIwNS1mNjc1ZTg3YjcwYjUiLCAiYXN5bmNfZXhlY3V0aW9u
PyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAES5AcKELjO41DUsKGu5P6vK4IjYn4SCFRcr/A/W138KgxDcmV3IENyZWF0
ZWQwATlouVUaOme1F0FI4lYaOme1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokNzA4ZWQ5MjAtYjljNi00NDNjLWFi
YTgtNWYxNmU1NjRhNjBlShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFu
Z3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29m
X2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwCCrkCW3siaWQiOiAiYzdjODAyMWUtNTRiNy00
N2MwLThhMDYtYWRlNzg3NGIwODAzIiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5h
YmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBt
IjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9u
YW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0
T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjog
W119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6ICI2YzRlMzE1ZC0zMDI4LTRkN2MtYjQ2ZS03
MmZkNTI5MDg2NjgiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJl
c2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMt
YXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3Jt
X3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZl
cnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAw
Mi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAEShAgKENslSBy3Jdit
F92oOCnvTtYSCCSo07GJKM5OKgxDcmV3IENyZWF0ZWQwATmILLIbOme1F0EAkLMbOme1F0oaCg5j
cmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2Ny
ZXdfaWQSJgokYzdlYWRlZGMtZTRkNi00NWEwLWI5NzItZjhiMDMwYmM1Y2E1ShwKDGNyZXdfcHJv
Y2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJf
b2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFK2gIKC2NyZXdfYWdlbnRz
EsoCCscCW3siaWQiOiAiMWRkMWQyZWYtZWQ5MS00N2U4LWIwNWYtMzczODQwZDBhNDBmIiwgInJv
bGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZh
bHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0i
OiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0
dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFi
bGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVhcm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3
X3Rhc2tzEowBCokBW3siaWQiOiAiNjMyMzA1ZDEtOTEzZS00MjYyLWI3ODAtMmIwNjNmMjAzNjZl
IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwg
InRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1Mt
MTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxh
dGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJu
ZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51
LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLdBwoQ7wAg
7FFg1tfA77VZgcY/cBIIwuo5CrzEligqDENyZXcgQ3JlYXRlZDABOUBjPCo6Z7UXQaDKPSo6Z7UX
ShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdK
MQoHY3Jld19pZBImCiRhMDY2MDhmYi1hMDllLTQ4ODgtOTg2OS1mZDdlMGU4YTlkNjVKHAoMY3Jl
d19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251
bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrIAgoLY3Jld19h
Z2VudHMSuAIKtQJbeyJpZCI6ICJiNDQyNWIyYy0wZWNhLTQwNTgtYjVlNC0xNjYxNGRkZGYwZjEi
LCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
ZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxs
bSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVy
YXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2Vu
YWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNyZXdfdGFza3MSeAp2W3si
aWQiOiAiMWVkYWQ3YzEtZDBjMS00YmM0LWIzYjgtMmY1MGM4ODg0ZTZlIiwgImFzeW5jX2V4ZWN1
dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgB
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '28971'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Mon, 19 Feb 2024 23:25:35 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=_b9GTEEB83Eo6Ok4_60ajcK_.XA.BlzfuKJrpIB_oXY-1708385133-1.0-AcDzZkCmdCq3rFVt2u4HVJ+k9azq/u0sfMFrH3nyE2P8C4Uq95DytcmBeCIYwiQb8lKfAgCrd824JOKuT8Gb1sw=;
_cfuvid=LRQbAnnrMQZRVPfGNlxIeBpZ8ZW2jnbKs0wkU3FdO8Q-1708385133861-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1SRzW7bMBCE73qKBS+52IYVOZXiW5JLEvRW34rCYOi1xJrkEtxVmjTwuxek/INe
CHC+ncVw+FUBKLtTa1Bm0GJ8dPNubF/46fXT3bddiw+t2/z48O3z32b1PT2qWXbQ2280cnYtDPno
UCyFCZuEWjBvrdtl13R3dbMqwNMOXbb1Uear+fJb3ZwcA1mDrNbwswIA+CpnzhZ2+KHWsJydFY/M
uke1vgwBqEQuK0ozWxYdRM2u0FAQDCXuZkAYRq8DaD4wyIDw8AJCkLRguYoVh3CTB62P2gjQPs/Y
UPB+lDFh1v5QOtwABdDARrui1fO7BWympb19RwYrhdPkWS3UKdbx8h5HfUz0lt8eRucu+t4Gy8M2
oWYKOTsLxcl+rAB+ld7G/6pQMZGPshU6YOBS//20T12/6EqbMxQS7a76bd1Vp4SKP1nQb/c29Jhi
sqXGnLM6Vv8AAAD//wMAhXaDeD0CAAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582450f7c486b26-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:35 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1361'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_352304cecd2458a4cbd225427e1d76be
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "4"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=_b9GTEEB83Eo6Ok4_60ajcK_.XA.BlzfuKJrpIB_oXY-1708385133-1.0-AcDzZkCmdCq3rFVt2u4HVJ+k9azq/u0sfMFrH3nyE2P8C4Uq95DytcmBeCIYwiQb8lKfAgCrd824JOKuT8Gb1sw=;
_cfuvid=LRQbAnnrMQZRVPfGNlxIeBpZ8ZW2jnbKs0wkU3FdO8Q-1708385133861-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2xSS0/DMAy+91dEPm9oXfeoegMkJk5DcAExVIUs6zKSOCSuYJr231Ha0Y6JHiLL
n7+H7B4SxkCtoWAgtpyEcXqY1/N7WoTrm914/bD8zCdf4SO7ezHP+LUPMIgMfN9JQb+sK4HGaUkK
bQsLLznJqJrOR3mWT9Ns2gAG11JHWuVoOBmOZml2YmxRCRmgYK8JY4wdmjdms2v5DQUbDX47RobA
KwlFN8QYeNSxAzwEFYhbgkEPCrQkbYxra63PAELUpeBa98btdzir+wVxrctp+vT4fbNYuPQhM2om
X+rb5bO5/zzza6X3rgm0qa3oFnOGd/3iwowxsNw03CeBXi5rcjVd0BkD7qvaSEsxOhxWdgUhjq+g
YJOVPcKf+WPyX/12qo7dbjVWzuN7uFgVbJRVYVt6yUMTGQKhay2i3Ftzw/rPWcB5NI5Kwg9po+Bs
3MpB/7f0YH7CCInrvj0fJad4EPaBpCk3ylbSO6+6eybH5AcAAP//AwAC1i4KxgIAAA==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85824519ad346b26-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:25:36 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '472'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299982'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_1aa45f4acc1b51944e2f188165c21a08
status:
code: 200
message: OK
version: 1

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,966 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7oJI7FhfdrBN2WPeKTWx0zf0ux0","object":"chat.completion.chunk","created":1708387083,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858274a70d60a4bd-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:58:04 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=Fzt.3y3dhP8ruN1TWiH6jLm0CcZkNtLDNsdfw_mz02I-1708387084-1.0-Ad3cAs7mDylg8sxtK6Ttgud1zpXW+twV1R26Y6LmMVz79On3i0JoMvjsIx7HWsHeZoJYHqaoXrWBV6c7wESpq3A=;
path=/; expires=Tue, 20-Feb-24 00:28:04 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=j_ZBAzbEz7fMKPo29aitwE0ivRAZjvpZR17gpXyL1o4-1708387084116-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '448'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_209df8a711cf6bf7c367149b0b6f8242
status:
code: 200
message: OK
- request:
body: !!binary |
CveKAgokCiIKDHNlcnZpY2UubmFtZRISChBjcmV3QUktdGVsZW1ldHJ5Es2KAgoSChBjcmV3YWku
dGVsZW1ldHJ5EvIHChAJNYRcEeEiqHTciFFAshfLEgiUxTCQyyT4kioMQ3JldyBDcmVhdGVkMAE5
6ICmVv9otRdBEAOsVv9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDYxYmZkNDk4LTQxOTUtNDJjMC1iOGU5LTky
NGMwZTdjZGEyMUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsYCCgtjcmV3X2FnZW50cxK2AgqzAlt7ImlkIjogIjkwNzFkMjk4LWVhODYtNDRjMS1h
YjRhLWUzM2ZmMjY2OTVhNSIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiA0LCAibWF4X3JwbSI6IDEwLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICJmYTYxZTMyMC02NjJiLTRhZmEtYTM2Mi0xYjFjOTlmMGEw
OTQiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESowsK
EKI61/O3gArNWKXyLquTVFwSCHxA8ssjIlgBKgxDcmV3IENyZWF0ZWQwATngz2Rg/2i1F0GgpGZg
/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokMDg1NjI1OTMtMjA3Yi00YzliLWI0YzItZDI1YjA2OTA4NjA5ShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJK/QQKC2Ny
ZXdfYWdlbnRzEu0ECuoEW3siaWQiOiAiNzNlNDZmZDgtMThlOC00Yzc3LWIzMzEtYWI5N2FkMWNh
MDcxIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IDEwLCAiaTE4biI6ICJlbiIs
ICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRl
bXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlv
bl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICI3Y2FiNDdlZS00
NjQ3LTQxNTQtYTBhNC1kNDM1NzY5Nzk2ZmMiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1lbW9y
eV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDIsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiB0cnVlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSpcCCgpjcmV3X3Rhc2tzEogCCoUCW3siaWQiOiAiMDY5MDYxYzctMDk5NS00ODg1LWFk
YzYtMjNhOWRmMTAzZGNhIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjIzM2YxYWUyLTA5ZjIt
NGFhNi05ZWU5LTNjNzAxMDU2ODdjZCIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2Vu
dF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIi
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAES9QcKEKK+FPWEZI+7agvaUnDOuzQSCM3TO+MjYzmGKgxDcmV3IENy
ZWF0ZWQwATmInCxq/2i1F0GoYS5q/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokYzBlYjFjNzItOTJhNy00MjIz
LWIwOWMtMzhhNTFkMzdlZDhlShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAFKyQIKC2NyZXdfYWdlbnRzErkCCrYCW3siaWQiOiAiZDZjYWE1OTItMDBk
My00YjkyLWE4YWItYjcwMDgzZWIxZmI4IiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
W119XUqdAQoKY3Jld190YXNrcxKOAQqLAVt7ImlkIjogImFlNTQ5ZGNkLWFmODYtNDU5NC1iZmYz
LTI1OGU1ODJiNTM1YSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFsiZ2V0X2ZpbmFsX2Fuc3dlciJdfV1KKAoIcGxh
dGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRII
CgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9u
EmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNU
IDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMS
AhgMegIYARL0BwoQOm2IgM0Nl5jB0IWeMN44TBIIPiJkrp4aQNEqDENyZXcgQ3JlYXRlZDABOfDw
cHP/aLUXQeC9cnP/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQyNWJhMDliYi02NjFjLTQzMmUtYjFkOS1mZDBi
MWJiZWY5ZDJKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICJmMzgzNmUxZi0xODkxLTRjOTUtYjky
NS05NTY4OGNhMGU1ODMiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNCwgIm1heF9ycG0iOiBudWxsLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICJmZDRlZmRhMi0wZGUzLTQwNjUtYWFjMS02ZTk2YWUxOWI2
NjIiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESjwwK
ELSwYmxhFBMIZKbUCnkT+eMSCAFtGCSOchWaKgxDcmV3IENyZWF0ZWQwATnwR+h8/2i1F0GYIOp8
/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokYzkyNDkxZmQtZDAzZS00ODhiLWEwOWQtMjg5Y2M3ZGRkMDM3ShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKggUKC2Ny
ZXdfYWdlbnRzEvIECu8EW3siaWQiOiAiN2U5YmZiOTUtMTcyNy00M2JhLWI1Y2YtYzgzNjMxNzhh
YjFiIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJl
biIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBc
InRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdh
dGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICI2MzkzYTNk
Mi03ZjhmLTRkZjctOGM3Mi1jMWJjYjc0OGU0NmMiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1l
bW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwg
Im1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBc
Im1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wi
OiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19u
YW1lcyI6IFtdfV1K/gIKCmNyZXdfdGFza3MS7wIK7AJbeyJpZCI6ICIyNWVkYjBhMi1mNjEwLTRi
MmQtOGQ5ZC1jYzY4Yzg4ZjEwMzkiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRf
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiMDY0MWU0ZTgt
M2IwOC00ZTdkLWEwODQtZjc3ZGVkZWQzNGQ0IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwg
ImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjVl
MmI0MWY1LTY5MDUtNDk1Yi04YjJiLWY2NGQ1MmE4YTczMCIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAEShAgKEBAXqmYdbMjB+KnMIGD6fNYSCGF7u8bAau6oKgxDcmV3IENyZWF0ZWQw
ATloOoeM/2i1F0HwxIiM/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokZDY3MzFmODMtMWEwMS00ZTQ1LWE5YjMt
NmMzNDRjOTQxMWZlShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGAFK2gIKC2NyZXdfYWdlbnRzEsoCCscCW3siaWQiOiAiMTIzMWQ3YTYtNjI1Yy00ODlm
LWIyM2ItZjI0OTM1M2ZlYjgwIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVk
PyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBu
dWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVc
IjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVu
QUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVh
cm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3X3Rhc2tzEowBCokBW3siaWQiOiAiNmNjNzg5OTYtODNi
Zi00MTY2LWFlMWYtZWFlYTY1ZjliMDQzIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFn
ZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKECAoQ08ZgnzWwn+DKMkWBVkUKHhIIaS0IvhJt/NwqDENyZXcgQ3Jl
YXRlZDABOQDEKZb/aLUXQZh1K5b/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRlY2RiMDI1MS02MDk2LTQ1OWQt
YmIyMS01NGNlMzczMzM0YjBKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAUraAgoLY3Jld19hZ2VudHMSygIKxwJbeyJpZCI6ICJiMzllY2JiYi1hOGQy
LTRkMDItODMxMy1iNzUzMTMwNzk4NDgiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2Vu
YWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
WyJsZWFybl9hYm91dF9BSSJdfV1KmwEKCmNyZXdfdGFza3MSjAEKiQFbeyJpZCI6ICI5ODgwMzYw
MS1mZGQ3LTRlYzItYjdkNi1lNmRiNDg1NWZlOTEiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNl
LCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbImxlYXJuX2Fib3V0
X0FJIl19XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0
Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBs
YXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAy
MCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRf
VDYwMzBKCgoEY3B1cxICGAx6AhgBErIEChBrivKwczy6M0XBe5RUKSOpEggllfJ7MFxZ6CoMQ3Jl
dyBDcmVhdGVkMAE5iN3aov9otRdBEGjcov9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4x
ShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDM2NTU2MTI2LTEwMDQt
NGUzNS05N2MzLWMyZTMyNDA1Nzc4N0ocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1j
cmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251
bWJlcl9vZl9hZ2VudHMSAhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoC
W11KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKyBAoQIuiOy8KC/HXbljhuxQah8BII+8qTPncJ3isqDENyZXcgQ3Jl
YXRlZDABOYg84KL/aLUXQTAb4aL/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQwNTJhYmYyNS0wMjNiLTQ0MmYt
YjBkMy1mMmE2ZTZhYWE3NTlKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAEoTCgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAESsgQKEPzk2jmJI2EkoYkrrPvvqSASCO2WOm6AjhlVKgxDcmV3IENyZWF0ZWQw
ATlYMt2j/2i1F0GYS96j/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokNmQwZTBiNjktMWE4Yi00MWQ3LTk2OGUt
ZTJkN2NkYjFjODAzShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgAShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGABKEwoLY3Jld19hZ2VudHMSBAoCW11KEgoKY3Jld190YXNrcxIECgJbXUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBErIEChAxDMeIyVLdG4XERTtm7zAeEgiH3Tf/w9XySCoMQ3JldyBDcmVhdGVkMAE5INDg
o/9otRdBWJfho/9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDJjYzJlOTZhLTI4ZDctNDgzMy04Mzk3LTk1OTQw
ZDIzZWEyY0ocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoCW11KKAoIcGxhdGZvcm0S
HAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4z
LjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURh
cndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7
IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIY
ARKyBAoQaT1AK6fdr7p65Jb1fVxEoRIIhilpNt12qyYqDENyZXcgQ3JlYXRlZDABOWgd56P/aLUX
QQDV56P/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhII
CgYzLjExLjdKMQoHY3Jld19pZBImCiQzMTQxMzkzYi1iNDdjLTRjNjMtOTdmNS1iNGJiNjhkZTcy
MWRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoa
ChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAEoT
CgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESoAsK
EGrC3Z3T0TbUGmLIlILJ2/0SCMSkDjTNbh3GKgxDcmV3IENyZWF0ZWQwATlYXimk/2i1F0EYtiqk
/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokODNkMzBlMTAtZjdlOS00Yzk4LThjZjMtMGZkMjhjNTg0MTRiShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKiAUKC2Ny
ZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMDcxNjI0MjYtZTk3MS00Y2U1LWI5MGUtZDk2ODg1NmM4
ZjE0IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVy
Ym9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAi
ZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwg
XCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVn
YXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjhiOGE2
M2E5LTdiYTEtNGZlMC04MWM5LWUxYjRjZjFhYWM2YyIsICJyb2xlIjogIlNlbmlvciBXcml0ZXIi
LCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6
IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51
bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNs
YXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0
b29sc19uYW1lcyI6IFtdfV1KiQIKCmNyZXdfdGFza3MS+gEK9wFbeyJpZCI6ICIwMDY2MDExMC01
OGQ5LTRkOGUtYjM1Yi00ZDY0M2ZlNTk0YjMiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAi
YWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjgy
MGVhOTBkLTUyZmYtNDcyNi1hZjBkLWZlNzlmYjNjZDBiMSIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBXcml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAESnQoKECAXGlPVhy3fsKPoQgzRxDoSCHsf2kNdPtmnKgxDcmV3IENyZWF0
ZWQwATmA4Tyz/2i1F0Hwbz6z/2i1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokMjA2MjIyM2UtNTY2OS00YjBhLWFj
NzQtMzBkZmQ0N2M2OGQwSh4KDGNyZXdfcHJvY2VzcxIOCgxoaWVyYXJjaGljYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqIBQoLY3Jld19hZ2VudHMS+AQK9QRbeyJpZCI6ICIwNzE2MjQyNi1lOTcx
LTRjZTUtYjkwZS1kOTY4ODU2YzhmMTQiLCAicm9sZSI6ICJSZXNlYXJjaGVyIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX0sIHsiaWQiOiAiOGI4YTYzYTktN2JhMS00ZmUwLTgxYzktZTFiNGNmMWFhYzZjIiwgInJv
bGUiOiAiU2VuaW9yIFdyaXRlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8i
OiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAi
bGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1w
ZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25f
ZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqEAQoKY3Jld190YXNrcxJ2CnRb
eyJpZCI6ICIxOThjY2FiYy03NDhmLTQ2MzEtOTgyYS0wNDBhOTk3NzBkMzAiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJOb25lIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgBEp0KChDm065n3J+O8xI0St3gB1pFEghMgYPAB+vGFioMQ3JldyBDcmVh
dGVkMAE5SCALu/9otRdBiLYMu/9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5
dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDk3ZDdkOTI3LTMyMzUtNGQ4ZC04
NzJmLWY1ODc2M2UyZTAwMkoeCgxjcmV3X3Byb2Nlc3MSDgoMaGllcmFyY2hpY2FsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMDcxNjI0MjYtZTk3
MS00Y2U1LWI5MGUtZDk2ODg1NmM4ZjE0IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogIjhiOGE2M2E5LTdiYTEtNGZlMC04MWM5LWUxYjRjZjFhYWM2YyIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhAEKCmNyZXdfdGFza3MSdgp0
W3siaWQiOiAiYzUyMDEwODctY2ZiYi00NGI1LWExYmEtMjY3OTkyMDlmMWQxIiwgImFzeW5jX2V4
ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiTm9uZSIsICJ0b29sc19uYW1lcyI6IFtd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKSCgoQ4Ch80ifm34dkfn0yKkAtAxIIMoxBWgpq37IqDENyZXcgQ3Jl
YXRlZDABOTB5Zbv/aLUXQeCpZrv/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ3YzEzZjk4YS04MWNjLTQ4MmMt
YjI5MS1kMzE4NWVkYTk2YTdKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqABQoLY3Jld19hZ2VudHMS8AQK7QRbeyJpZCI6ICJlODQ5ZDlkMi02ODM4
LTRjZGMtODQ5OS1jNDY5ZmVkYjU3ZTYiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/
IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51
bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwi
OiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5B
SVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7
ImlkIjogIjhiOGE2M2E5LTdiYTEtNGZlMC04MWM5LWUxYjRjZjFhYWM2YyIsICJyb2xlIjogIlNl
bmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2Us
ICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7
XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVc
IjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/
IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgwEKCmNyZXdfdGFza3MSdQpzW3siaWQiOiAi
ZTc5OTg1OTktMDBlNS00NWFhLTllMzItNmYxZjFiYjY0YjU5IiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiQ0VPIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBEqALChD9D1juNXXoNRjaGsioq4/tEgjeXlBBQMr5qioMQ3JldyBDcmVhdGVkMAE5qDD5
yv9otRdBoNL6yv9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGI2NDlhODY2LWJhNTAtNGY5MC04ODAzLWVkYjVm
MmM0M2NjNUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgCSogFCgtjcmV3X2FnZW50cxL4BAr1BFt7ImlkIjogIjA3MTYyNDI2LWU5NzEtNGNlNS1iOTBl
LWQ5Njg4NTZjOGYxNCIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGws
ICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBc
ImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwi
fSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJp
ZCI6ICI4YjhhNjNhOS03YmExLTRmZTAtODFjOS1lMWI0Y2YxYWFjNmMiLCAicm9sZSI6ICJTZW5p
b3IgV3JpdGVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAi
bWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wi
bmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6
IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6
IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSokCCgpjcmV3X3Rhc2tzEvoBCvcBW3siaWQiOiAi
YzEwODczYmUtOTUxMi00MmQ5LTliY2UtNTAwNWY2OTJkNDlkIiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfSwg
eyJpZCI6ICJiNDVkMzk5ZC0xMWZiLTQ3M2UtOWY2Ni1kNmZkNWUyMWM5ZGIiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTZW5pb3IgV3JpdGVyIiwgInRvb2xzX25h
bWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBw
bGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsK
EHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERl
YyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJN
NjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEuUHChB2eKFfnHcjT+Y1XIuw/jQZEgj2LdHRO4bsiCoM
Q3JldyBDcmVhdGVkMAE5oCmJ5f9otRdBGI2K5f9otRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4x
MS4xShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDA3MjA1ZjNkLTEw
YzYtNDlmOS04NjIxLWQ4N2MyYTFmYzI2OUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoV
Cg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3
X251bWJlcl9vZl9hZ2VudHMSAhgBSswCCgtjcmV3X2FnZW50cxK8Agq5Alt7ImlkIjogIjA3MTYy
NDI2LWU5NzEtNGNlNS1iOTBlLWQ5Njg4NTZjOGYxNCIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAi
bWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1
LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGws
IFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNz
XCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29s
c19uYW1lcyI6IFtdfV1KigEKCmNyZXdfdGFza3MSfAp6W3siaWQiOiAiMDQzZmQ5YzItYWQ2My00
ZTQyLWFmNGMtYjNkY2Q0ZmMxMWI5IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50
X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoa
bWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBK
GwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndp
biBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJv
b3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARKj
CwoQ2AqlO3mh1jyJg6EhNAcochII1e5CgQPQn9IqDENyZXcgQ3JlYXRlZDABOTh3lPT/aLUXQcAB
lvT/aLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYz
LjExLjdKMQoHY3Jld19pZBImCiQwZGQwMWMzOS04MTU1LTRlNTYtYmJmMi0wNDQ0YzRkNzA4ZjRK
HAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRj
cmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAkr9BAoL
Y3Jld19hZ2VudHMS7QQK6gRbeyJpZCI6ICJlODQ5ZDlkMi02ODM4LTRjZGMtODQ5OS1jNDY5ZmVk
YjU3ZTYiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjA3MTYyNDI2LWU5
NzEtNGNlNS1iOTBlLWQ5Njg4NTZjOGYxNCIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4
X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9k
ZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwi
Q2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1l
cyI6IFtdfV1KlwIKCmNyZXdfdGFza3MSiAIKhQJbeyJpZCI6ICIyNjJiMGQyOC05ODQ1LTQ4YTct
ODM0Ny02YzUzODI5Y2MwM2EiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9s
ZSI6ICJDRU8iLCAidG9vbHNfbmFtZXMiOiBbIm11bHRpcGxpZXIiXX0sIHsiaWQiOiAiMTQ3MTAy
YjUtMjdlYi00NTI3LTgxMDEtYzAzYTliMzc4NTc2IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxz
ZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFsibXVsdGlwbGll
ciJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZv
cm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0
Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAg
MjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2
MDMwSgoKBGNwdXMSAhgMegIYARL1BwoQkfc0U9faxddMfMzGTSZa3xIIN+3nfveYLW4qDENyZXcg
Q3JlYXRlZDABOVCNiQMAabUXQbD0igMAabUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoa
Cg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQzZDc1ZWQzOS00MjBlLTRl
ZDQtYWE0YS1hNWE3MGE2NjM2MTVKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jl
d19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1i
ZXJfb2ZfYWdlbnRzEgIYAUrJAgoLY3Jld19hZ2VudHMSuQIKtgJbeyJpZCI6ICI5NjZlZjM2NC1j
YTcyLTRiNzUtOTdiNS1lMDI4ZTI5OGNkODgiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSp0BCgpjcmV3X3Rhc2tzEo4BCosBW3siaWQiOiAiZTM2YWM2YTgtZDc0Yy00NjZlLTg3
YTItM2M2NDVlZmU5ZTJhIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJnZXRfZmluYWxfYW5zd2VyIl19XUooCghw
bGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNl
EggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNp
b24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQ
U1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1
cxICGAx6AhgBEt0IChCFv3PoygvwjOr5nDCoxodOEghLXBOUSJrl5yoMQ3JldyBDcmVhdGVkMAE5
kMRPDABptRdBCChRDABptRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDc5OThjMGQ1LTRlOTItNDdjZi1hMjU3LTNj
ZGE1YTQwZjRkZEocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsoCCgtjcmV3X2FnZW50cxK6Agq3Alt7ImlkIjogIjZhYTY3MDkwLTM5ZTAtNDlmMC1h
ZDZlLTAyNjA1ZTUxYzdlYSIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxs
LCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjog
XCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlc
In0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSoQC
CgpjcmV3X3Rhc2tzEvUBCvIBW3siaWQiOiAiMWJiNzQ5Y2MtYjhkYi00NDEzLWFkMGQtOWI1OTQ4
YTI0ZGYyIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCBy
b2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogImZiNDI0MDZlLTlmYjEtNDhmZC1hNTRh
LTdiY2MzZmE0NGQyOCIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQu
My1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZv
cm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwg
VmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEw
MDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLiBwoQgK6Vti48
YjJuaBViDM57pxIIwlAqvHM82XQqDENyZXcgQ3JlYXRlZDABOeBsdREAabUXQSjYdhEAabUXShoK
DmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoH
Y3Jld19pZBImCiQ1YTA0MWRhNS1jY2MxLTRiNzEtODQ4NC02YmQ5OGZhMWRkZjhKHAoMY3Jld19w
cm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJl
cl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrKAgoLY3Jld19hZ2Vu
dHMSugIKtwJbeyJpZCI6ICI4NjhhNjUxZi01MDg4LTRlNWMtYjUyMy1hZmRjZjhhMzk4MGYiLCAi
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
dHJ1ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxt
IjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJh
dHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5h
YmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJp
ZCI6ICJiMmI5OWVhYy04M2YwLTQxYjMtYWFkNC02NWE3MWQzZTVjODEiLCAiYXN5bmNfZXhlY3V0
aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBb
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAESmAwKEC3+N10HF2aTbIa5eJa41zwSCInyjSyrV37fKgxDcmV3IENy
ZWF0ZWQwATnYQ4MRAGm1F0GIdIQRAGm1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokOTJmMWZmNjgtNjVlYi00Mjcw
LWJmMmEtNDdjZDdiOGZmYTY4ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMDcxNjI0MjYtZTk3
MS00Y2U1LWI5MGUtZDk2ODg1NmM4ZjE0IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogIjhiOGE2M2E5LTdiYTEtNGZlMC04MWM5LWUxYjRjZjFhYWM2YyIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgQMKCmNyZXdfdGFza3MS8gIK
7wJbeyJpZCI6ICIxMmI4Y2QxNi0zNTRhLTQwMTktOTc4Yi02NjUxOTdiYjFkYzkiLCAiYXN5bmNf
ZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFt
ZXMiOiBbXX0sIHsiaWQiOiAiOWM4MWVjOWQtMmVlMy00YmRjLTg0M2UtOGE5OTg0ZGMyMTJlIiwg
ImFzeW5jX2V4ZWN1dGlvbj8iOiB0cnVlLCAiYWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRv
b2xzX25hbWVzIjogW119LCB7ImlkIjogIjk1Njg4M2E3LWEyYzQtNDcxMy1hNDExLTIwODJiYjMy
YzQ1MyIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBX
cml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJt
NjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5
c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNp
b24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44
MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES5AcKEFZ6R51jS3b7NAII
FFJxc/USCD4Fymb2I6UhKgxDcmV3IENyZWF0ZWQwATnIxUwSAGm1F0GIHU4SAGm1F0oaCg5jcmV3
YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdf
aWQSJgokNGZlNThjMzMtZWIwOS00YWVjLTliNTAtZTBmNjQ0NGQyOGUyShwKDGNyZXdfcHJvY2Vz
cxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2Zf
dGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwC
CrkCW3siaWQiOiAiMmFiOTQ1ZWMtNmFkZi00ZjhlLThjYzEtZDc1YzM0MGE1NWIwIiwgInJvbGUi
OiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxz
ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjog
IntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVy
ZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxl
ZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6
ICI2YmJmOTM4OS05MDVmLTRiZTQtOTU4OC04OWM0YzgzNDVkNzciLCAiYXN5bmNfZXhlY3V0aW9u
PyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAES5AcKEKSvLIWCtcA5+CGbFqDf51ESCLgud/yzYGKJKgxDcmV3IENyZWF0
ZWQwATmomtgSAGm1F0FAz9kSAGm1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokOTcxNTBmZTQtNDEzZS00YjMyLWFh
YzgtMWZmMTdmMWFlMWIwShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFu
Z3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29m
X2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwCCrkCW3siaWQiOiAiZTZlZTNiYjktYTM4Yy00
NjkzLTg1YzAtOWFlN2FiMzY3OTU0IiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5h
YmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBt
IjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9u
YW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0
T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjog
W119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6ICJlNzU3OWM0YS0zN2M4LTQzZjYtYjU3OS03
MDYzMjgzOTM2MmUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJl
c2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMt
YXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3Jt
X3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZl
cnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAw
Mi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAEShAgKEACMX4S7lXMV
Uso4rDzumw4SCOFSyoPA+ILgKgxDcmV3IENyZWF0ZWQwATmYVj8UAGm1F0HgwUAUAGm1F0oaCg5j
cmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2Ny
ZXdfaWQSJgokYTMyOTVmMmYtZTljNS00MDdkLWE1NDAtZjRmYTI1ZDdlYjIzShwKDGNyZXdfcHJv
Y2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJf
b2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFK2gIKC2NyZXdfYWdlbnRz
EsoCCscCW3siaWQiOiAiZDc5YzYxYTMtZWQxYy00OTdhLTliYjgtMjg1OWExNzllZDgxIiwgInJv
bGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZh
bHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0i
OiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0
dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFi
bGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVhcm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3
X3Rhc2tzEowBCokBW3siaWQiOiAiNzgxNzdjNzItNjRhZS00M2ZlLWI1OTItZTliNTlmNzNiNWMw
IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwg
InRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1Mt
MTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxh
dGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJu
ZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51
LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLdBwoQ+UFv
fqm+K1G9c19NjUlY3hIID8INZeMycOYqDENyZXcgQ3JlYXRlZDABOUDLSiMAabUXQeBRTCMAabUX
ShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdK
MQoHY3Jld19pZBImCiRmZTE3MjQzYS1mYTQyLTRmNTAtYmUwZi1lNDY0MDc3MTc3MDhKHAoMY3Jl
d19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251
bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrIAgoLY3Jld19h
Z2VudHMSuAIKtQJbeyJpZCI6ICIzODAxZmQ2Yy1jMDY2LTQ1ZTItOTY4OC03NmY5YWQ4OTU3YzUi
LCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
ZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxs
bSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVy
YXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2Vu
YWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNyZXdfdGFza3MSeAp2W3si
aWQiOiAiZDE4YjExNGEtMDVhMC00ZmNkLWExZjYtNmM3YTcwMjRjNTZmIiwgImFzeW5jX2V4ZWN1
dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgBEt0HChDviIet1EG5tkqxAn2xWMkEEgjk0HxsxYdn7SoMQ3JldyBDcmVh
dGVkMAE5qDmFJgBptRdBMEGHJgBptRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5
dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGY1ZjFjYjhiLTZiNGEtNDZiMy1i
MTQxLTQ5OWMwMGE0OGIxOUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xh
bmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9v
Zl9hZ2VudHMSAhgBSsgCCgtjcmV3X2FnZW50cxK4Agq1Alt7ImlkIjogIjE1OGE5ZTU0LTkwM2Mt
NDg1Yi1iYzIzLTFhZGQzMjliNjMyOCIsICJyb2xlIjogIlNjb3JlciIsICJtZW1vcnlfZW5hYmxl
ZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjog
bnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1l
XCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3Bl
bkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119
XUqGAQoKY3Jld190YXNrcxJ4CnZbeyJpZCI6ICIxYjE0NWQ4OS05NzA0LTRmZmEtYTUzNC05YzFm
MmJlNjc4MjQiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29y
ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQt
YXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3Rl
bRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24g
MjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41
fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES1QgKEBuPsV+dBTMNNIWDF+d2
KokSCO2zgUpXmdnDKgxDcmV3IENyZWF0ZWQwATlw/5kpAGm1F0HQZpspAGm1F0oaCg5jcmV3YWlf
dmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQS
JgokYjY2ZjY1MTgtYjYwZC00YjZjLWFkZGUtMTVmZGViMWQ5ZmQ1ShwKDGNyZXdfcHJvY2VzcxIM
CgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFz
a3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKyAIKC2NyZXdfYWdlbnRzErgCCrUC
W3siaWQiOiAiMjQ1NDlmZjctOGZhZS00ZTYwLThkMGEtNzNlYzkxNmE3ZDc0IiwgInJvbGUiOiAi
U2NvcmVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4
X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFt
ZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAu
NywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZh
bHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSv4BCgpjcmV3X3Rhc2tzEu8BCuwBW3siaWQiOiAiNjk1
NGJjZDMtN2EwNS00YTg1LTk0ZGEtN2UzMGM0YTkwNDE4IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBm
YWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjog
IjdiM2JmZDY4LTM3YjctNDk3Mi05NWI5LWU2M2Y3MGMwYTliZCIsICJhc3luY19leGVjdXRpb24/
IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNjb3JlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoI
cGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFz
ZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJz
aW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkg
UFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNw
dXMSAhgMegIYARLVCAoQMFavY6R+M8VKfR0IuD7J7BIIRT9oQ4tD6QEqDENyZXcgQ3JlYXRlZDAB
OWi+Ci8AabUXQVA5DC8AabUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25f
dmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ1ODU2MzZmNy1kYjA2LTRmODYtYjcwMi1h
MDM2ZmE5M2MxYmRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFn
ZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdl
bnRzEgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICI2NmUwYzMwMi1lZDI2LTQzYTQt
YTA5NS0wYWVmMTY3N2JkZjkiLCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGws
ICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBc
ImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwi
fSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1K/gEK
CmNyZXdfdGFza3MS7wEK7AFbeyJpZCI6ICJlYzM4ZGNjNi02OTk4LTQwNGItODgyMi1mOTY0NDdk
ZDUxN2IiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIi
LCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiMmM0NWFhZTMtNTRjYS00MDhkLTlmOTctYzAz
NzUyYTE3NzI1IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2Nv
cmVyIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0
LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0
ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9u
IDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEu
NX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEt0HChAGyXCYUYk+AnEAKUUB
f6Y7EgjZK54jkKVQASoMQ3JldyBDcmVhdGVkMAE5mEVnNABptRdBmLxoNABptRdKGgoOY3Jld2Fp
X3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lk
EiYKJDhkNTNkZTIyLWEyNTgtNGIwMS05M2MwLTM0NTAxMDQ4OGUwN0ocCgxjcmV3X3Byb2Nlc3MS
DAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rh
c2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2VudHMSAhgBSsgCCgtjcmV3X2FnZW50cxK4Agq1
Alt7ImlkIjogIjJiMzRkOGZmLTY0OTAtNDY4MC1iZmRiLTQ0MTE3Y2NjZGNhMCIsICJyb2xlIjog
IlNjb3JlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1h
eF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5h
bWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAw
LjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBm
YWxzZSwgInRvb2xzX25hbWVzIjogW119XUqGAQoKY3Jld190YXNrcxJ4CnZbeyJpZCI6ICI4MDRl
M2EzYS00NjYxLTQ4ZDctYjgyMC02ODk5MmU1ZTEyODgiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZh
bHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRm
b3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoG
MjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJn
CmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAy
MDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIY
DHoCGAES3QcKEO2ikjl6HhLK2BkbjrmndFkSCJmJeKKJCQsHKgxDcmV3IENyZWF0ZWQwATmw6iQ3
AGm1F0HYASc3AGm1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNp
b24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokZTkzNGVlNTItNTJmZi00OWUyLTg0OWMtYmMyNmQ4
NWIxN2RmShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoC
ZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxIC
GAFKyAIKC2NyZXdfYWdlbnRzErgCCrUCW3siaWQiOiAiNjcyOTBjNzgtNDcwNC00MzYyLTlhOGMt
NDMzZmEzNmYzODVmIiwgInJvbGUiOiAiU2NvcmVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUs
ICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4
biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQt
NFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAi
ZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSoYBCgpjcmV3
X3Rhc2tzEngKdlt7ImlkIjogIjYxN2I4YWZiLTJlMTMtNDcyZS04ZWFjLWZkNDdhODRhZjI4MCIs
ICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNjb3JlciIsICJ0b29s
c19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRK
HAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndp
bkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdl
ZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNF
X0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYAQ==
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '34171'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Mon, 19 Feb 2024 23:58:05 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=Fzt.3y3dhP8ruN1TWiH6jLm0CcZkNtLDNsdfw_mz02I-1708387084-1.0-Ad3cAs7mDylg8sxtK6Ttgud1zpXW+twV1R26Y6LmMVz79On3i0JoMvjsIx7HWsHeZoJYHqaoXrWBV6c7wESpq3A=;
_cfuvid=j_ZBAzbEz7fMKPo29aitwE0ivRAZjvpZR17gpXyL1o4-1708387084116-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1SRzU8CMRDF7/tXTHrhAoQVlIWbHowfiSejB2NIKcNuoe3UdlYlhP/dtMtHvDTp
+82bvL7uCwChV2IOQjWSlfVmULVTeuaX8nZWXslftbH8cPf1/vTWzHabe9FPDlpuUPHJNVRkvUHW
5DqsAkrGtLWcjqpxNR1VkwwsrdAkW+15MBmMbsrx0dGQVhjFHD4KAIB9PlM2t8JfMYdR/6RYjFHW
KObnIQARyCRFyBh1ZOlY9C9QkWN0Oe5rg9C0VjqQcRuBG4TbR2CCIBnzlTUbhF4a1NZLxUDrNKNd
xuuW24BJ+6Gw7QE5kBCVNFkrB9dDeO2W1vobI2jOnDrPZCiOsQ7n9xiqfaBlertrjTnra+10bBYB
ZSSXskcm39kPBcBn7q39V4XwgaznBdMWXcz1z7p94vJFFzo+QSaW5qJflVVxTCjiLjLaxVq7GoMP
OteYchaH4g8AAP//AwCU/+hLPQIAAA==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858274ac7ab1a4bd-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:58:05 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1234'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_378add836bad9286db76ff9169f6ef43
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "4"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=Fzt.3y3dhP8ruN1TWiH6jLm0CcZkNtLDNsdfw_mz02I-1708387084-1.0-Ad3cAs7mDylg8sxtK6Ttgud1zpXW+twV1R26Y6LmMVz79On3i0JoMvjsIx7HWsHeZoJYHqaoXrWBV6c7wESpq3A=;
_cfuvid=j_ZBAzbEz7fMKPo29aitwE0ivRAZjvpZR17gpXyL1o4-1708387084116-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA2xSS2/bMAy++1cIPCeDu2ax4+P6OGwBOqAoVmApDFmhHa+SKEh0sSzIfx9kp3Ya
zAeB4MfvAdKHRAhot1AIUDvJyjg9z7uM1t9u3FO1qG4f65+rm2d3v1rywxuaALPIoOo3Kn5nfVJk
nEZuyQ6w8igZo+pVlubXeZbmX3rA0BZ1pDWO54t5ury6PjF21CoMUIhfiRBCHPo3ZrNb/AOFSGfv
HYMhyAahGIeEAE86dkCG0AaWlmE2gYoso41xbaf1GcBEulRS68l4+A5n9bQgqXX5Y/30du/Wz6/o
s8p/vcvqv9+b1X535jdI710fqO6sGhdzho/94sJMCLDS9NxHRR4fOnYdX9CFAOmbzqDlGB0OG7uB
EMc3UIjFxh7hw/wx+V/9cqqO4241Nc5TFS5WBXVr27ArPcrQR4bA5AaLKPfS37D7cBZwnozjkukV
bRRcfh7kYPpbJjA/YUws9dTO0uQUD8I+MJqybm2D3vl2vGdyTP4BAAD//wMAkRH1fcYCAAA=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858274b5dc11a4bd-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:58:06 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '579'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299981'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_e791c6467b700cfe727e205bc0a512b4
status:
code: 200
message: OK
version: 1

View File

@@ -0,0 +1,848 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8u7fc3hJpVbV3T3SDSWArVIw5o4Gt","object":"chat.completion.chunk","created":1708386544,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 8582677c0f6200e2-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Mon, 19 Feb 2024 23:49:04 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=7sCpUch4zHBRr3bC0ZrXiZ.hp5JDRz10XR.quEnwOrA-1708386544-1.0-Afdz/ZpiEUiaPexcCrxugPwkeqRkeirb63bcWwb2oQP4BxG9mVHI7ouMoBhxJcQysgMju/x4AOA6ugypjle7VW0=;
path=/; expires=Tue, 20-Feb-24 00:19:04 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=ekJFOKa47vCR_bxQqig9km7tYBNhHULDxrGlY80MRHE-1708386544507-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '219'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_2f71caa23336ee2e58caeaa115a97d5f
status:
code: 200
message: OK
- request:
body: !!binary |
CpeDAgokCiIKDHNlcnZpY2UubmFtZRISChBjcmV3QUktdGVsZW1ldHJ5Eu2CAgoSChBjcmV3YWku
dGVsZW1ldHJ5EvIHChAaBf6ADKyntq+vRGX9SJpHEgiijN4P4Uh2ECoMQ3JldyBDcmVhdGVkMAE5
8CnAyIFotRdBWE7FyIFotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGYyMWRiZGJkLTQxZTgtNDU3MC1iMmI3LTQw
NzdiZTNhMDc3MEocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsYCCgtjcmV3X2FnZW50cxK2AgqzAlt7ImlkIjogImJhNmVhNTM3LWJmNDItNDJjYi1h
ZjMwLTU2MmZmN2NhNWQ5YyIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiA0LCAibWF4X3JwbSI6IDEwLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICJkNmVlYzc5NC1kOTU0LTQwZTMtYTYyNi0xYzE2MDJlOWE3
NWIiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESowsK
EC2mUzP54YHc6LDJLAdu6acSCMTJm+B7lvLuKgxDcmV3IENyZWF0ZWQwATkQF53UgWi1F0EA5J7U
gWi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokODZlNjBkZTEtNzVmMy00YjFjLWFhOTItZDg3ODI2MzhlZjMxShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJK/QQKC2Ny
ZXdfYWdlbnRzEu0ECuoEW3siaWQiOiAiYzVlOTFkYWQtMDRiMi00NzM2LWFjZTMtZWY5NzRiYjVi
ODQ3IiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IDEwLCAiaTE4biI6ICJlbiIs
ICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRl
bXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlv
bl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICIyYjcwOGEzYy1l
MmEyLTQxN2QtOTdiMS0wMWVmZWUzZjg4NWEiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1lbW9y
eV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDIsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiB0cnVlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSpcCCgpjcmV3X3Rhc2tzEogCCoUCW3siaWQiOiAiN2FhMGFlZTUtMTU2Yy00NTczLThh
OGQtMzFiODM4MDY0YjY1IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjhhNzU1NDM3LWEwZjQt
NDVlYi1iMGZmLTY0MjNiNTVjZjlkOCIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2Vu
dF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIi
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAES9QcKEFwgkzU6sNPz3QKFgtqCsCQSCJoGYLG1gNkBKgxDcmV3IENy
ZWF0ZWQwATkwDUbegWi1F0Eg2kfegWi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokNDBiNzg0ZGMtZDIxYi00NmM3
LTliMjAtMWNhMWE2MWU3Mzc1ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAFKyQIKC2NyZXdfYWdlbnRzErkCCrYCW3siaWQiOiAiNmE3ZGY0MDQtY2Nh
YS00MTMwLThkOTYtYTFhZGI2MzIyMjJhIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IHRydWUsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
W119XUqdAQoKY3Jld190YXNrcxKOAQqLAVt7ImlkIjogIjIzOTlhNDljLTlmNjAtNDU4My1hOGE5
LTIyNjU3ODBkMDE1MSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFsiZ2V0X2ZpbmFsX2Fuc3dlciJdfV1KKAoIcGxh
dGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRII
CgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9u
EmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNU
IDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMS
AhgMegIYARL0BwoQGVyvg83A0+tCto6XeaWbshIIsQstUO/9OJIqDENyZXcgQ3JlYXRlZDABOYAP
1OSBaLUXQQDF1eSBaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQwMTU5ZjZjNS0yNDkxLTRmMGMtYTc1NC1hMzIy
NTM2MmJkMmRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICI2MmQ4OTg0Yy1kNThlLTRlZGMtYWM5
Mi1lYWI0ZTcxMjI4NDkiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNCwgIm1heF9ycG0iOiBudWxsLCAi
aTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJn
cHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0i
LCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfV1KnQEKCmNy
ZXdfdGFza3MSjgEKiwFbeyJpZCI6ICI0MWExYTU3MS1iNmE0LTRlYTYtYThhZS02OGU1ZmE4M2E0
OTUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUi
LCAidG9vbHNfbmFtZXMiOiBbImdldF9maW5hbF9hbnN3ZXIiXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESjwwK
EMMtvuOpjbr3pcyF2HeSmB4SCMkWR08aQxAUKgxDcmV3IENyZWF0ZWQwATlAaAfugWi1F0FgLQnu
gWi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokMWNkYWQ0Y2EtODIzNC00MzQzLWIxNzctNGIyN2Q0YjNjZGJkShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKggUKC2Ny
ZXdfYWdlbnRzEvIECu8EW3siaWQiOiAiNWEwODIyODItZWRkNi00NjdiLTk1NWMtZDliNmI1Y2Vk
ZmFmIiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJi
b3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJl
biIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBc
InRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdh
dGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJpZCI6ICI3Y2IwNmY2
Mi1iNzFiLTRmNDItOGQ5ZS1hZDQyM2FjODQwMGMiLCAicm9sZSI6ICJ0ZXN0IHJvbGUyIiwgIm1l
bW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwg
Im1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBc
Im1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wi
OiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19u
YW1lcyI6IFtdfV1K/gIKCmNyZXdfdGFza3MS7wIK7AJbeyJpZCI6ICI0NjhiM2QzZi00ZmYxLTQy
OWQtOTYzMC02MWQ4MzNhNDYxODAiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRf
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiNmRmMmY1YmYt
ZDZjOS00Y2RjLTkzNTYtNjZkYzMyZWIwYTc4IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwg
ImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjJm
Y2FjNjNjLWVkNTItNDMwZS1hY2E3LTU1MmZjOTZkNjdkMyIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogInRlc3Qgcm9sZTIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAEShAgKEO+YplJZB62ddxyM6fGVOdESCL+wftUglT4gKgxDcmV3IENyZWF0ZWQw
ATkwCzP9gWi1F0HojTT9gWi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokYzhiZTYxYmQtNzRkNS00NGRkLTlmNzAt
MmI5NzgwZjY2ZDIyShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGAFK2gIKC2NyZXdfYWdlbnRzEsoCCscCW3siaWQiOiAiNzdlYjEwZWYtZTdlMi00NGVl
LThlMjEtOTQ0NTAwOTgyNjM3IiwgInJvbGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVk
PyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBu
dWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVc
IjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVu
QUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVh
cm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3X3Rhc2tzEowBCokBW3siaWQiOiAiY2FjZjYxYTEtYTI3
Mi00MmYyLThkNjgtMzQzYjc1NzRkNjE4IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFn
ZW50X3JvbGUiOiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKECAoQ3/ART7Hu8wHqWsK8s7GPLhIIWK0QMBvW+rMqDENyZXcgQ3Jl
YXRlZDABOeCW1AaCaLUXQdg41gaCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiQ5OGZhN2E2ZS00NDJhLTQ1Njgt
YWIwZS0zYmRkNGJiMWUxYTRKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAUraAgoLY3Jld19hZ2VudHMSygIKxwJbeyJpZCI6ICJkNmU0OWUwYy00MmJj
LTQxMjItYjBmNy1mNzNlYzE1ZTUwOTEiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2Vu
YWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3Jw
bSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxf
bmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hh
dE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjog
WyJsZWFybl9hYm91dF9BSSJdfV1KmwEKCmNyZXdfdGFza3MSjAEKiQFbeyJpZCI6ICJmZjUwOWJh
Ni0wZWY1LTRhM2QtYmY2MC1iMTI1YjQxOWMwN2YiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNl
LCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBbImxlYXJuX2Fib3V0
X0FJIl19XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0
Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBs
YXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAy
MCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRf
VDYwMzBKCgoEY3B1cxICGAx6AhgBErIEChBkDRmgIQJSMs8XzeZJmy9WEgjvUY/YfexjlioMQ3Jl
dyBDcmVhdGVkMAE5UGNUE4JotRdB8OlVE4JotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4x
ShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGI2NjM0ZTcxLWEwZDkt
NDY0Ny1hYzExLTNkZGU0MTU2OGI1MUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1j
cmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251
bWJlcl9vZl9hZ2VudHMSAhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoC
W11KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKyBAoQqzgXtMmkYCiVpHhtOc8l5BII8vXSrf+p/swqDENyZXcgQ3Jl
YXRlZDABOaCLWROCaLUXQTBuWhOCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRjMjQ0OGE2NC1jMjJlLTRmMTAt
YWJhYy00MzQ3NTgwOWMwNjdKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAEoTCgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigK
CHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVh
c2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVy
c2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5
IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRj
cHVzEgIYDHoCGAESsgQKEH9v7ozC/TRcIrFffRecZVQSCGk2sHo6qD3EKgxDcmV3IENyZWF0ZWQw
ATmgIFAUgmi1F0G4FlEUgmi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9u
X3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokMGY4OGQyYzEtMjA4Ni00MDdhLWFhY2Mt
ZWRjNWNiNzljYjQ4ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3Vh
Z2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgAShsKFWNyZXdfbnVtYmVyX29mX2Fn
ZW50cxICGABKEwoLY3Jld19hZ2VudHMSBAoCW11KEgoKY3Jld190YXNrcxIECgJbXUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBErIEChBgGyM8bfOC9H6Yresp1LU2EghhF6gh58RxMCoMQ3JldyBDcmVhdGVkMAE5YGxT
FIJotRdBsC9UFIJotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDgwNWVjYzk0LWNjYjgtNGUxNS1iZjc0LWEyMjgw
YTcxZjNmMEocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAEobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgAShMKC2NyZXdfYWdlbnRzEgQKAltdShIKCmNyZXdfdGFza3MSBAoCW11KKAoIcGxhdGZvcm0S
HAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4z
LjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURh
cndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7
IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIY
ARKyBAoQyEH/nm/WLrr+txJI9c1MNRIInN5POTzXVX4qDENyZXcgQ3JlYXRlZDABOViFVhSCaLUX
QQg5VxSCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhII
CgYzLjExLjdKMQoHY3Jld19pZBImCiRkNTEyNjYyNS03ODFjLTQ2NTktYTAzNC01MmUyOWIxZTcz
MGFKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoa
ChRjcmV3X251bWJlcl9vZl90YXNrcxICGABKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAEoT
CgtjcmV3X2FnZW50cxIECgJbXUoSCgpjcmV3X3Rhc2tzEgQKAltdSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAESoAsK
EI0iKPIpK2XIwcBR3dYpPokSCNnvOoO6kqq4KgxDcmV3IENyZWF0ZWQwATnoXawUgmi1F0FY7K0U
gmi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokNTUwYzgzNzQtNTU2OS00ODk5LTkzMjgtMjkwMDFjOWE4ODFmShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAJKiAUKC2Ny
ZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMTBmODVhZGQtYWVmMC00ODI4LTg2ZjgtYWIwNjQzMTE4
NTYzIiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVy
Ym9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAi
ZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwg
XCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVn
YXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjM2MWQy
Y2Y3LTQ4MzMtNDVlOS05MzBhLWVlMGQ1YWNjNGZlYyIsICJyb2xlIjogIlNlbmlvciBXcml0ZXIi
LCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6
IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51
bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNs
YXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0
b29sc19uYW1lcyI6IFtdfV1KiQIKCmNyZXdfdGFza3MS+gEK9wFbeyJpZCI6ICI2MjQ2ZDc5Yy0x
ZDY5LTRhZjUtYTIzZi1jMDFkYzA1ZWIyMmUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAi
YWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogImJi
Yzg3NjllLWVjODQtNDhiOS1iZGQ3LWNmYzNmNGZmYmZmMyIsICJhc3luY19leGVjdXRpb24/Ijog
ZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBXcml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAESnQoKEKBL0fRR5foqjy0NBV/SMoESCBCt9aF+VH99KgxDcmV3IENyZWF0
ZWQwATlwxi8jgmi1F0E4cDEjgmi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokZjAxNDIzZmMtMjBiOC00ZGExLWFj
MjctZDJmZjBkYmM0YjNhSh4KDGNyZXdfcHJvY2VzcxIOCgxoaWVyYXJjaGljYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqIBQoLY3Jld19hZ2VudHMS+AQK9QRbeyJpZCI6ICIxMGY4NWFkZC1hZWYw
LTQ4MjgtODZmOC1hYjA2NDMxMTg1NjMiLCAicm9sZSI6ICJSZXNlYXJjaGVyIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX0sIHsiaWQiOiAiMzYxZDJjZjctNDgzMy00NWU5LTkzMGEtZWUwZDVhY2M0ZmVjIiwgInJv
bGUiOiAiU2VuaW9yIFdyaXRlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8i
OiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAi
bGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1w
ZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25f
ZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqEAQoKY3Jld190YXNrcxJ2CnRb
eyJpZCI6ICIwMjFkMjBkOS0yNzEwLTQ4ZWItYTE3Yy1jMmNkM2Y3MTE1ZGIiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJOb25lIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgBEp0KChC60uV+UvE3TfkONIYsdPIWEgjtxjRGLdWXVyoMQ3JldyBDcmVh
dGVkMAE5AFM4K4JotRdBEPE5K4JotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5
dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDU0Y2Q3OTE4LTExY2YtNDFlYS04
Y2I0LWMzZTUyMjk3ZTA3NEoeCgxjcmV3X3Byb2Nlc3MSDgoMaGllcmFyY2hpY2FsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMTBmODVhZGQtYWVm
MC00ODI4LTg2ZjgtYWIwNjQzMTE4NTYzIiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogIjM2MWQyY2Y3LTQ4MzMtNDVlOS05MzBhLWVlMGQ1YWNjNGZlYyIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhAEKCmNyZXdfdGFza3MSdgp0
W3siaWQiOiAiZWMxNWE4OWEtZmUzYy00ODE0LWFiYzgtNmU5MjA2NTBhNjA2IiwgImFzeW5jX2V4
ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiTm9uZSIsICJ0b29sc19uYW1lcyI6IFtd
fV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1f
cmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9y
bV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6
MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMw
SgoKBGNwdXMSAhgMegIYARKSCgoQCVflxxGNwvMhP8LW1ShkjxIIgQsqXO3qazwqDENyZXcgQ3Jl
YXRlZDABOVhYjyuCaLUXQaDDkCuCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5w
eXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRlZmI2YmMzYy03N2RhLTQ2ZGMt
YTBiYS0xNGM5ZjUzODY5ZjBKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19s
YW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJf
b2ZfYWdlbnRzEgIYAkqABQoLY3Jld19hZ2VudHMS8AQK7QRbeyJpZCI6ICIxMzNhMWQ3Zi1hNjA3
LTQ1Y2YtYWUzOS1kYzUwNmZkNWM5ZmMiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/
IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51
bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwi
OiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5B
SVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7
ImlkIjogIjM2MWQyY2Y3LTQ4MzMtNDVlOS05MzBhLWVlMGQ1YWNjNGZlYyIsICJyb2xlIjogIlNl
bmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2Us
ICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7
XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVc
IjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/
IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgwEKCmNyZXdfdGFza3MSdQpzW3siaWQiOiAi
ZDFjMWEzNTEtZjVkNC00YTg0LTk4ZTEtNGIwMDAxMDllYWI1IiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiQ0VPIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0
Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggK
BjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24S
ZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1Qg
MjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxIC
GAx6AhgBEqALChAb5sWVeq8pqmeyU+rhNMnjEghRQjxrXAphgCoMQ3JldyBDcmVhdGVkMAE5uOUA
O4JotRdByIMCO4JotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJz
aW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGI0Mzg3MzFjLWU5MGQtNDMxZS1hYzIxLTQzODM4
MDY1OTNhNEocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQK
AmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2VudHMS
AhgCSogFCgtjcmV3X2FnZW50cxL4BAr1BFt7ImlkIjogIjEwZjg1YWRkLWFlZjAtNDgyOC04NmY4
LWFiMDY0MzExODU2MyIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGws
ICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBc
ImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwi
fSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfSwgeyJp
ZCI6ICIzNjFkMmNmNy00ODMzLTQ1ZTktOTMwYS1lZTBkNWFjYzRmZWMiLCAicm9sZSI6ICJTZW5p
b3IgV3JpdGVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAi
bWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wi
bmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6
IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6
IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSokCCgpjcmV3X3Rhc2tzEvoBCvcBW3siaWQiOiAi
ZTM0MzE3ZTEtNGE1Mi00ZTIwLTk4NjktMzhjYTkzZjVhNTViIiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfSwg
eyJpZCI6ICJlZTg0MmQ1MC00NjY4LTRiMDEtOTFmZS0zY2ZkMDFhOTRjZGEiLCAiYXN5bmNfZXhl
Y3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTZW5pb3IgV3JpdGVyIiwgInRvb2xzX25h
bWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBw
bGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsK
EHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERl
YyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJN
NjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEuUHChBqnLN4z+4Oh0fzwImxbgzUEgg5cOoePHNASioM
Q3JldyBDcmVhdGVkMAE5MDfaVoJotRdBeKLbVoJotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4x
MS4xShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDQ0ZWNhNmYyLTE5
YzEtNDQ4ZS1iMmUwLTdkNDQ5MTQyODZjN0ocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoV
Cg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3
X251bWJlcl9vZl9hZ2VudHMSAhgBSswCCgtjcmV3X2FnZW50cxK8Agq5Alt7ImlkIjogIjEwZjg1
YWRkLWFlZjAtNDgyOC04NmY4LWFiMDY0MzExODU2MyIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAi
bWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1
LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGws
IFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNz
XCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29s
c19uYW1lcyI6IFtdfV1KigEKCmNyZXdfdGFza3MSfAp6W3siaWQiOiAiMzhjMjQ5YTEtY2I0YS00
NWU4LWFjZWQtODQ1NTFhYTZmZDIwIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50
X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoa
bWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBK
GwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndp
biBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJv
b3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARKj
CwoQ2yJHNwDi7vo1/jP4UAxivhIIP8pLRbVUpa8qDENyZXcgQ3JlYXRlZDABOej4x2KCaLUXQehv
yWKCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYz
LjExLjdKMQoHY3Jld19pZBImCiQ0YzZjNDFkMy00ODNmLTRhYjItOTRmOC1kYzU5ZmJkNWVmZmVK
HAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRj
cmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAkr9BAoL
Y3Jld19hZ2VudHMS7QQK6gRbeyJpZCI6ICIxMzNhMWQ3Zi1hNjA3LTQ1Y2YtYWUzOS1kYzUwNmZk
NWM5ZmMiLCAicm9sZSI6ICJDRU8iLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogdHJ1ZSwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjEwZjg1YWRkLWFl
ZjAtNDgyOC04NmY4LWFiMDY0MzExODU2MyIsICJyb2xlIjogIlJlc2VhcmNoZXIiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4
X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9k
ZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwi
Q2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1l
cyI6IFtdfV1KlwIKCmNyZXdfdGFza3MSiAIKhQJbeyJpZCI6ICI2ZDAzNDRjOS1jYzVjLTQ1MTQt
OGY4Ny02MzAxNGE4MWY4MjciLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9s
ZSI6ICJDRU8iLCAidG9vbHNfbmFtZXMiOiBbIm11bHRpcGxpZXIiXX0sIHsiaWQiOiAiNDI0ZGQ0
NGUtZjQ4OC00NGUxLWFkMTAtMTg4OGJmM2I4NmIyIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxz
ZSwgImFnZW50X3JvbGUiOiAiUmVzZWFyY2hlciIsICJ0b29sc19uYW1lcyI6IFsibXVsdGlwbGll
ciJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZv
cm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0
Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAg
MjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2
MDMwSgoKBGNwdXMSAhgMegIYARL1BwoQrvhyfUymxzKC5iEWN2dWURIIVGkJAcjAZbgqDENyZXcg
Q3JlYXRlZDABOVigVnGCaLUXQXATWHGCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoa
Cg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRiYTA5NTE1Ni1kZTgwLTQ2
MDQtODRmOC02ZjY0NDcyMGY5NTVKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jl
d19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1i
ZXJfb2ZfYWdlbnRzEgIYAUrJAgoLY3Jld19hZ2VudHMSuQIKtgJbeyJpZCI6ICI1NmJhNTI0MC1m
Mjg3LTQ4MDYtYWU0Zi0zOWE3ZGVjOTUzNWIiLCAicm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5
X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogdHJ1ZSwgIm1heF9pdGVyIjogNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSp0BCgpjcmV3X3Rhc2tzEo4BCosBW3siaWQiOiAiODI1ZDVjYzgtYzY4Zi00YmVkLTg2
NzMtOTMxZjRmMmFlMjA4IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUi
OiAidGVzdCByb2xlIiwgInRvb2xzX25hbWVzIjogWyJnZXRfZmluYWxfYW5zd2VyIl19XUooCghw
bGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNl
EggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNp
b24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQ
U1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1
cxICGAx6AhgBEt0IChBnG8wv7PJ1b3KFlw0SBOg0Egjvp/uJcbZA+CoMQ3JldyBDcmVhdGVkMAE5
uAA4eoJotRdBGGg5eoJotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92
ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJDExMjM1NzUyLWMyZTYtNGNjZS1iZWYyLTc3
MjY2MGJjNzJjZkocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdl
EgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAkobChVjcmV3X251bWJlcl9vZl9hZ2Vu
dHMSAhgBSsoCCgtjcmV3X2FnZW50cxK6Agq3Alt7ImlkIjogImM5ZTNmMmNlLTNhMjEtNDdhYS05
ZTAxLTQ5ZTdjNTdlODJjNyIsICJyb2xlIjogInRlc3Qgcm9sZSIsICJtZW1vcnlfZW5hYmxlZD8i
OiB0cnVlLCAidmVyYm9zZT8iOiB0cnVlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxs
LCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjog
XCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlc
In0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSoQC
CgpjcmV3X3Rhc2tzEvUBCvIBW3siaWQiOiAiMWUwOGVhOTctNzcwNS00NWVkLWEzYjAtOWIzMTA5
ZmUwZGRmIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCBy
b2xlIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjogIjAzZTlhYTY1LTgyOWEtNGFmNC1iZjc4
LTI2MzdlOTUxMGY1OSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
InRlc3Qgcm9sZSIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQu
My1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZv
cm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwg
VmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEw
MDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLiBwoQAfjjPs6D
LCND7pliOfYfDhII++9fVfMcOB8qDENyZXcgQ3JlYXRlZDABObBwTX+CaLUXQXDITn+CaLUXShoK
DmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoH
Y3Jld19pZBImCiRhZTU3NTIxOC01ZmIxLTRmNTAtYmQ3ZC02YTQ0ODNkMjE4YWJKHAoMY3Jld19w
cm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJl
cl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrKAgoLY3Jld19hZ2Vu
dHMSugIKtwJbeyJpZCI6ICI4ZmVlNmRkMC1hNTlkLTRiZmItOTVkYS0wNzZkMzgzNTQ0MzIiLCAi
cm9sZSI6ICJ0ZXN0IHJvbGUiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
dHJ1ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxt
IjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJh
dHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5h
YmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJp
ZCI6ICI2YzgwNjQyNi0zOTAwLTQyODYtYTZlMy1kOWY5ZDFmY2M4YmIiLCAiYXN5bmNfZXhlY3V0
aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJ0ZXN0IHJvbGUiLCAidG9vbHNfbmFtZXMiOiBb
XX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3Jt
X3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZv
cm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIx
OjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAz
MEoKCgRjcHVzEgIYDHoCGAESmAwKEDsJBaixAJXHgKyhDHuP5ZMSCKsRgdLAeU1kKgxDcmV3IENy
ZWF0ZWQwATnIHlp/gmi1F0GoR1t/gmi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoO
cHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokMTQwMjBmNmUtOTg2ZC00ZWY4
LWI5MDQtZjJmNTIxNTE2ZjdkShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdf
bGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgDShsKFWNyZXdfbnVtYmVy
X29mX2FnZW50cxICGAJKiAUKC2NyZXdfYWdlbnRzEvgECvUEW3siaWQiOiAiMTBmODVhZGQtYWVm
MC00ODI4LTg2ZjgtYWIwNjQzMTE4NTYzIiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlf
ZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhf
cnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2Rl
bF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJD
aGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogIjM2MWQyY2Y3LTQ4MzMtNDVlOS05MzBhLWVlMGQ1YWNjNGZlYyIsICJy
b2xlIjogIlNlbmlvciBXcml0ZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/
IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwg
ImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVt
cGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9u
X2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KgQMKCmNyZXdfdGFza3MS8gIK
7wJbeyJpZCI6ICJlNDYyZTczZS04ZTk1LTQxNzktOTM2NC0wMjAyMGMyZDYwNDAiLCAiYXN5bmNf
ZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFt
ZXMiOiBbXX0sIHsiaWQiOiAiYWZmYjBlYTYtYjBjOC00ZTE2LWIzYjItZWNhMmZhN2YzZDMxIiwg
ImFzeW5jX2V4ZWN1dGlvbj8iOiB0cnVlLCAiYWdlbnRfcm9sZSI6ICJSZXNlYXJjaGVyIiwgInRv
b2xzX25hbWVzIjogW119LCB7ImlkIjogIjQ0NWIyNGI4LTQ2NzAtNDIzYS04Mzk5LTdjMjA4NzE5
MzE1NCIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNlbmlvciBX
cml0ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJt
NjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5
c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNp
b24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44
MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES5AcKENs2IxIKRMt9JVAA
RURPdEQSCJoAf6jlLZzTKgxDcmV3IENyZWF0ZWQwATmgYxmAgmi1F0GQsxqAgmi1F0oaCg5jcmV3
YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdf
aWQSJgokNDY2OGVmMTAtYmIwMi00YTZhLWIwZGQtMGEyNmVhNGIzMjU1ShwKDGNyZXdfcHJvY2Vz
cxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2Zf
dGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwC
CrkCW3siaWQiOiAiOWRlNTk3ZGYtNmViNy00NGI5LWI1OGEtNGUxZjIyZjA0NGU4IiwgInJvbGUi
OiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxz
ZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjog
IntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVy
ZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxl
ZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6
ICI5MzI0YWFiYi1hYTE1LTRmMmUtYjUyMi1lZjJhYjQyYWM1YjUiLCAiYXN5bmNfZXhlY3V0aW9u
PyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJlc2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1d
SigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3Jl
bGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1f
dmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMw
OjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoK
CgRjcHVzEgIYDHoCGAES5AcKEN2W4GxctPgvbUuN50b4LsESCLQyrtF1qM7cKgxDcmV3IENyZWF0
ZWQwATkouKCAgmi1F0Eg3aGAgmi1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0
aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokZDA1ZWUzNzctMDZhYy00YjU0LWJj
NDAtY2I1NmZiMDYwOTA4ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFu
Z3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29m
X2FnZW50cxICGAFKzAIKC2NyZXdfYWdlbnRzErwCCrkCW3siaWQiOiAiOWM4OTQ1N2EtNDUwMS00
ZWJjLThjNzctMTczYzZjN2YzZDIyIiwgInJvbGUiOiAiUmVzZWFyY2hlciIsICJtZW1vcnlfZW5h
YmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBt
IjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9u
YW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0
T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjog
W119XUqJAQoKY3Jld190YXNrcxJ7CnlbeyJpZCI6ICIzOGRiNmY1Yi1lNjFiLTRmMjQtODNlNi03
MWM2MDcyOGU3YTIiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IHRydWUsICJhZ2VudF9yb2xlIjogIlJl
c2VhcmNoZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMt
YXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3Jt
X3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZl
cnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAw
Mi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAEShAgKEC8jvjWhAsZK
yS48nBnpGckSCFKE/i+cC7Q6KgxDcmV3IENyZWF0ZWQwATl4wwyCgmi1F0FgPg6Cgmi1F0oaCg5j
cmV3YWlfdmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2Ny
ZXdfaWQSJgokMzRkNjkxYjItNzA5ZC00MWMxLTg3OGMtNDRkYjE2M2YzNGRmShwKDGNyZXdfcHJv
Y2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJf
b2ZfdGFza3MSAhgBShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFK2gIKC2NyZXdfYWdlbnRz
EsoCCscCW3siaWQiOiAiZTU2NTMwYTQtMmJjOS00ZmQyLThjZWEtMDU2MTcwNzE0MmNiIiwgInJv
bGUiOiAidGVzdCByb2xlIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZh
bHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0i
OiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0
dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFi
bGVkPyI6IHRydWUsICJ0b29sc19uYW1lcyI6IFsibGVhcm5fYWJvdXRfQUkiXX1dSpsBCgpjcmV3
X3Rhc2tzEowBCokBW3siaWQiOiAiN2RlYzgyNDEtYzFiNy00ZWMyLWI4NzgtYjE1YWU3YzZkNjc4
IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAidGVzdCByb2xlIiwg
InRvb2xzX25hbWVzIjogWyJsZWFybl9hYm91dF9BSSJdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1Mt
MTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxh
dGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJu
ZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51
LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLdBwoQZ+lX
gqUablLbHyMcxzcT0xIIvqfNkVQkSecqDENyZXcgQ3JlYXRlZDABOehDY5CCaLUXQTCvZJCCaLUX
ShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdK
MQoHY3Jld19pZBImCiRlZWNjZmE1Yi1jMDRiLTRkMjktOWUwOS01YTNhOWE3YjdlOTZKHAoMY3Jl
d19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251
bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrIAgoLY3Jld19h
Z2VudHMSuAIKtQJbeyJpZCI6ICIyODA2ZjY2ZC0zZmNmLTRmMjgtYTRiOC05NmRiYzAwMmYxNWYi
LCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/Ijog
ZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxs
bSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVy
YXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2Vu
YWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNyZXdfdGFza3MSeAp2W3si
aWQiOiAiOTc0NDY4OTItZTJkMy00MTdlLWIzMDEtN2IzNWRjNmE4ODBlIiwgImFzeW5jX2V4ZWN1
dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119
XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9y
ZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3Jt
X3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMToz
MDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBK
CgoEY3B1cxICGAx6AhgBEt0HChC8c5/M8T8hC2aKGlF64RRiEgic9zXLL9VauyoMQ3JldyBDcmVh
dGVkMAE58F9ak4JotRdB+Ktbk4JotRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5
dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGQyZGFkNTVlLWEyODEtNDFiYS05
NWQzLTRmODA0Y2FmNGFhNUocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xh
bmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9v
Zl9hZ2VudHMSAhgBSsgCCgtjcmV3X2FnZW50cxK4Agq1Alt7ImlkIjogIjk3ZDkwOTJiLTY4YjMt
NGJkNS04YmE2LWVkMzZmZDEzZjUxOSIsICJyb2xlIjogIlNjb3JlciIsICJtZW1vcnlfZW5hYmxl
ZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjog
bnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1l
XCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3Bl
bkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119
XUqGAQoKY3Jld190YXNrcxJ4CnZbeyJpZCI6ICIzZGJhMzZmZi04ZjI2LTQwYzItOTNjOC00NzE2
ZjZjNjBmZDkiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29y
ZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQt
YXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3Rl
bRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24g
MjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41
fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES1QgKEN2BJRDQYY7QWWqSxuHe
8p8SCBqqCQSDoyEcKgxDcmV3IENyZWF0ZWQwATlAC02Wgmi1F0Ggck6Wgmi1F0oaCg5jcmV3YWlf
dmVyc2lvbhIICgYwLjExLjFKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQS
JgokMmNhNzY5ZTYtOTc0My00MjQ3LThhYTAtOWUyZWZjYzhjMDQyShwKDGNyZXdfcHJvY2VzcxIM
CgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFz
a3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKyAIKC2NyZXdfYWdlbnRzErgCCrUC
W3siaWQiOiAiYTg1YjRjYjQtMjY1OS00ODVlLTgzNDUtYTAzNmE0NmQyZDk5IiwgInJvbGUiOiAi
U2NvcmVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4
X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFt
ZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAu
NywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZh
bHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSv4BCgpjcmV3X3Rhc2tzEu8BCuwBW3siaWQiOiAiOTUy
OTM0MTQtNWM5My00OTVmLWIxNDgtMzJkY2FjMmZkYWIwIiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBm
YWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119LCB7ImlkIjog
IjhkODZjN2Q3LTEyYzUtNDU1NS04ZjVjLTU0Nzg2MWE2ZjllMSIsICJhc3luY19leGVjdXRpb24/
IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNjb3JlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoI
cGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFz
ZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJz
aW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkg
UFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNw
dXMSAhgMegIYARLVCAoQhIazhXGDdJlB1HEcA4mNsRIISN/DVD4ZQJoqDENyZXcgQ3JlYXRlZDAB
ObjzgpuCaLUXQXB2hJuCaLUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTEuMUoaCg5weXRob25f
dmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRmZTQ4YjRlOC0zNWI4LTQzZmEtODBmNS1h
MGM5NDM1NmZlMTlKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFn
ZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jld19udW1iZXJfb2ZfYWdl
bnRzEgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICIwYzUwZjU1Ny0xZDdkLTQ2Njct
OGQ3OC01ZWI4NjBhY2RhZWUiLCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/Ijog
dHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGws
ICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBc
ImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwi
fSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1K/gEK
CmNyZXdfdGFza3MS7wEK7AFbeyJpZCI6ICIzOWI4N2JhOS1mNDEyLTRkOWQtOGMxYS00MGZlZWZl
Y2NkZDUiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIi
LCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiNjNmMjM1OTAtNTc0Ny00ZmZhLWE5ODEtYTcx
NmZkYmFjYjQ4IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2Nv
cmVyIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0
LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0
ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9u
IDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEu
NX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEt0HChC4GJyNtkFmtfZXC9Uk
/eqvEghHGH/dFF+7ISoMQ3JldyBDcmVhdGVkMAE5aKB7oIJotRdBgBN9oIJotRdKGgoOY3Jld2Fp
X3ZlcnNpb24SCAoGMC4xMS4xShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lk
EiYKJDlhNzA2ODA2LTlhOTAtNGZmOC1hYTFjLWZmM2UwNTZhZDc3M0ocCgxjcmV3X3Byb2Nlc3MS
DAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rh
c2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2VudHMSAhgBSsgCCgtjcmV3X2FnZW50cxK4Agq1
Alt7ImlkIjogIjdiNmQ1NmI3LWI4MTgtNDU3YS05ZDRlLTkxNmJkMmEzOWQ0NyIsICJyb2xlIjog
IlNjb3JlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1h
eF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5h
bWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAw
LjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBm
YWxzZSwgInRvb2xzX25hbWVzIjogW119XUqGAQoKY3Jld190YXNrcxJ4CnZbeyJpZCI6ICI5MzFh
NGI0MS05YTFkLTRkOTAtOWI4MC0zNzAwNTczNGRiYTYiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZh
bHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRm
b3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoG
MjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJn
CmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAy
MDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIY
DHoCGAE=
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
Content-Length:
- '33179'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Mon, 19 Feb 2024 23:49:05 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=7sCpUch4zHBRr3bC0ZrXiZ.hp5JDRz10XR.quEnwOrA-1708386544-1.0-Afdz/ZpiEUiaPexcCrxugPwkeqRkeirb63bcWwb2oQP4BxG9mVHI7ouMoBhxJcQysgMju/x4AOA6ugypjle7VW0=;
_cfuvid=ekJFOKa47vCR_bxQqig9km7tYBNhHULDxrGlY80MRHE-1708386544507-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA1SRS2vDMBCE7/4Viy65JCFpnEd9aw+F3loSSqGUoMhrW42sFdK6aQn570VyHvQi
0Hw7y2h0zACELkUBQjWSVevMaNUtK1UdDq/79SG3L+8bfizXs6c3y7lBMYwO2n2h4otrrKh1BlmT
7bHyKBnj1ulyspqtFvM8T6ClEk201Y5H+WiymM7Ojoa0wiAK+MgAAI7pjNlsiT+igMnworQYgqxR
FNchAOHJREXIEHRgaVkMb1CRZbQp7qZBaLpWWpBhH4AbhIdnYAIvGdOVNRuEQRzUrZOKgao4o23C
Vcedx6gdyO8HQBYkBCVN0qaj+Rg2/dJaf2MAzYlT78nH4hzrdH2Podp52sW3286Yq15pq0Oz9SgD
2Zg9MLnefsoAPlNv3b8qhPPUOt4y7dGGVP99v0/cvuhGZxfIxNLc9LvpKjsnFOE3MLbbStsavfM6
1RhzZqfsDwAA//8DAE3c61s9AgAA
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 858267800d3200e2-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Mon, 19 Feb 2024 23:49:06 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1626'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_2e0618da30f6aa7a43b2698061939da0
status:
code: 200
message: OK
version: 1

View File

@@ -0,0 +1,494 @@
interactions:
- request:
body: '{"messages": [{"role": "user", "content": "You are Scorer.\nYou''re an
expert scorer, specialized in scoring titles.\n\nYour personal goal is: Score
the titleTo complete the task you MUST follow the format:\n\n```\nFinal Answer:
[your most complete final answer goes here]\n``` You must use these formats,
my life depends on it.This is the summary of your work so far:\nBegin! This
is VERY important to you, your job depends on it!\n\nCurrent Task: Give me an
integer score between 1-5 for the following title: ''The impact of AI in the
future of work''\nYour final answer must be: The score of the title.\n"}], "model":
"gpt-4", "n": 1, "stop": ["\nResult"], "stream": true, "temperature": 0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '692'
content-type:
- application/json
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: 'data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
Answer"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"
"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-8uATyqiZf6iIskukmI84ugDm1H0G9","object":"chat.completion.chunk","created":1708397354,"model":"gpt-4-0613","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]}
data: [DONE]
'
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85836f679bbb1ab1-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Type:
- text/event-stream
Date:
- Tue, 20 Feb 2024 02:49:14 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=Ru2FKLJKCKm88s_DX8Mq9qJ47KVzLXTzKgnKsJTlABI-1708397354-1.0-AQh3Ie3Pr21iUgelcsLQAfZsyez2JIV9depVidctxAY5ZSSNr2vj5B7ht1meQxkc4krOrDbgy9Ljf5p74nOCQlc=;
path=/; expires=Tue, 20-Feb-24 03:19:14 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=vnpvno_JVcoaEfWoEMif6lomt7v63tB2n2IhYZJ5lT8-1708397354882-0.0-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '231'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299845'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 31ms
x-request-id:
- req_efeb5a1bdc189fd4a22c59e6c733c8cd
status:
code: 200
message: OK
- request:
body: !!binary |
Cs04CiQKIgoMc2VydmljZS5uYW1lEhIKEGNyZXdBSS10ZWxlbWV0cnkSpDgKEgoQY3Jld2FpLnRl
bGVtZXRyeRLdBwoQIVLkQNO9Zsy8V9JTBCR+bhIIpjD0t3O28r0qDENyZXcgQ3JlYXRlZDABOUhU
wGZXcrUXQdibxWZXcrUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAuMTQuMEoaCg5weXRob25fdmVy
c2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRiMTk1ODhmMC0xMzg0LTQ0ZjYtYTE1NS05NWQ4
ZTU0NDcyYWJKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIE
CgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRz
EgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICIxMTBlZDkwOS05ZDI4LTQ2ZDctYjBl
My03Yzg0M2RhZTE3N2UiLCAicm9sZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1
ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJp
MThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdw
dC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIs
ICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNy
ZXdfdGFza3MSeAp2W3siaWQiOiAiODQ5Yjg0YzQtMDMyNS00MmUzLWIzZDctNDgwODdlMDFjY2U2
IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRv
b2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJp
dEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFy
d2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDog
V2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVB
U0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEt0HChDN6oSR2AQZEy+pmKLHoDwxEgh2vJ1J
wXzTYyoMQ3JldyBDcmVhdGVkMAE5IH8ealdytRdBiDggaldytRdKGgoOY3Jld2FpX3ZlcnNpb24S
CAoGMC4xNC4wShoKDnB5dGhvbl92ZXJzaW9uEggKBjMuMTEuN0oxCgdjcmV3X2lkEiYKJGIyZjFh
YjExLWJiNzEtNDVjYS1iOGZlLWVmOWIzMjk0MWM5ZEocCgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVu
dGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNyZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUob
ChVjcmV3X251bWJlcl9vZl9hZ2VudHMSAhgBSsgCCgtjcmV3X2FnZW50cxK4Agq1Alt7ImlkIjog
IjE4ZDIwMDdmLWU1YjgtNDA0OC05NzNjLTNkZDA4N2UzOWZmOCIsICJyb2xlIjogIlNjb3JlciIs
ICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9zZT8iOiBmYWxzZSwgIm1heF9pdGVyIjog
MTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4iLCAibGxtIjogIntcIm5hbWVcIjogbnVs
bCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xh
c3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRpb25fZW5hYmxlZD8iOiBmYWxzZSwgInRv
b2xzX25hbWVzIjogW119XUqGAQoKY3Jld190YXNrcxJ4CnZbeyJpZCI6ICI0ODBhNmVlOS1jOGVi
LTQyOGItOGM1ZS03OWQwNGJmNjA3MGQiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdl
bnRfcm9sZSI6ICJTY29yZXIiLCAidG9vbHNfbmFtZXMiOiBbXX1dSigKCHBsYXRmb3JtEhwKGm1h
Y09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRmb3JtX3JlbGVhc2USCAoGMjMuMy4wShsK
D3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxhdGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4g
S2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIwIDIxOjMwOjU5IFBTVCAyMDIzOyByb290
OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9UNjAzMEoKCgRjcHVzEgIYDHoCGAES1QgK
EPP7YsejqlFJITpRoPvrVfYSCK0gcBCCXLLZKgxDcmV3IENyZWF0ZWQwATmgcWxtV3K1F0EQAG5t
V3K1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjE0LjBKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4x
MS43SjEKB2NyZXdfaWQSJgokZmY0ZWMyYmUtZmEyYy00ZWFiLWFhMDktOWE2MDVhN2E3YWYzShwK
DGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNyZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jl
d19udW1iZXJfb2ZfdGFza3MSAhgCShsKFWNyZXdfbnVtYmVyX29mX2FnZW50cxICGAFKyAIKC2Ny
ZXdfYWdlbnRzErgCCrUCW3siaWQiOiAiOTU1Zjg3ZTktZTdkZC00OTQwLTk0MzYtODU3YzE3ZDFi
YTFiIiwgInJvbGUiOiAiU2NvcmVyIiwgIm1lbW9yeV9lbmFibGVkPyI6IHRydWUsICJ2ZXJib3Nl
PyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiaTE4biI6ICJlbiIs
ICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVsX25hbWVcIjogXCJncHQtNFwiLCBcInRl
bXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNoYXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlv
bl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMiOiBbXX1dSv4BCgpjcmV3X3Rhc2tzEu8B
CuwBW3siaWQiOiAiMGUwMjcwZTEtMWYzMS00NGU1LTkyZjgtYzE3Zjg3MzNkOTVlIiwgImFzeW5j
X2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVz
IjogW119LCB7ImlkIjogImMxNGU0YzM1LWZlN2ItNDlmMC1hNjQ5LTRkMmI4MjBjNzkzNSIsICJh
c3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIlNjb3JlciIsICJ0b29sc19u
YW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1hcm02NC1hcm0tNjRiaXRKHAoQ
cGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1fc3lzdGVtEggKBkRhcndpbkp7
ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVyc2lvbiAyMy4zLjA6IFdlZCBE
ZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAyLjgxLjV+Ny9SRUxFQVNFX0FS
TTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLVCAoQMhmG/09mSNoVDKMhdcK3LhIIeUQ8qBJuu4Uq
DENyZXcgQ3JlYXRlZDABOdC+H3RXcrUXQWCbIXRXcrUXShoKDmNyZXdhaV92ZXJzaW9uEggKBjAu
MTQuMEoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jld19pZBImCiRlNTFhNmY3Ny05
Njc0LTQ5Y2ItODU1OC00ODZkNDc3MmVhMmFKHAoMY3Jld19wcm9jZXNzEgwKCnNlcXVlbnRpYWxK
FQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAJKGwoVY3Jl
d19udW1iZXJfb2ZfYWdlbnRzEgIYAUrIAgoLY3Jld19hZ2VudHMSuAIKtQJbeyJpZCI6ICI2MDZl
YjM5YS02NmZiLTRiMWItYjljNC00NDk2MGJiYjA3ZjEiLCAicm9sZSI6ICJTY29yZXIiLCAibWVt
b3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAi
bWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7XCJuYW1lXCI6IG51bGwsIFwi
bW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVcIjogMC43LCBcImNsYXNzXCI6
IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/IjogZmFsc2UsICJ0b29sc19u
YW1lcyI6IFtdfV1K/gEKCmNyZXdfdGFza3MS7wEK7AFbeyJpZCI6ICI2OGQzZjQyYS1jZmJhLTQ5
MGEtODNjNi0wYjNhMTZhNjdkYmIiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRf
cm9sZSI6ICJTY29yZXIiLCAidG9vbHNfbmFtZXMiOiBbXX0sIHsiaWQiOiAiNzQ0ZThlZDktMTc3
YS00NGQ1LWFiYTMtZmI0OTZmMzQ0MWM3IiwgImFzeW5jX2V4ZWN1dGlvbj8iOiBmYWxzZSwgImFn
ZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119XUooCghwbGF0Zm9ybRIcChpt
YWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNlEggKBjIzLjMuMEob
Cg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNpb24SZwplRGFyd2lu
IEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQU1QgMjAyMzsgcm9v
dDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1cxICGAx6AhgBEt0H
ChAdP1n30tByxunJByeYqn3MEgijNV4D7oizKSoMQ3JldyBDcmVhdGVkMAE5KPPieVdytRdBqKjk
eVdytRdKGgoOY3Jld2FpX3ZlcnNpb24SCAoGMC4xNC4wShoKDnB5dGhvbl92ZXJzaW9uEggKBjMu
MTEuN0oxCgdjcmV3X2lkEiYKJDViNjk3YjZiLThmZmUtNDgxYy1hNzViLThiYmJkYjFlNjBhY0oc
CgxjcmV3X3Byb2Nlc3MSDAoKc2VxdWVudGlhbEoVCg1jcmV3X2xhbmd1YWdlEgQKAmVuShoKFGNy
ZXdfbnVtYmVyX29mX3Rhc2tzEgIYAUobChVjcmV3X251bWJlcl9vZl9hZ2VudHMSAhgBSsgCCgtj
cmV3X2FnZW50cxK4Agq1Alt7ImlkIjogIjQ4NzQzZGFhLTk5OWYtNDkwYy04YjlhLTFiODFlODBi
MjRhYiIsICJyb2xlIjogIlNjb3JlciIsICJtZW1vcnlfZW5hYmxlZD8iOiB0cnVlLCAidmVyYm9z
ZT8iOiBmYWxzZSwgIm1heF9pdGVyIjogMTUsICJtYXhfcnBtIjogbnVsbCwgImkxOG4iOiAiZW4i
LCAibGxtIjogIntcIm5hbWVcIjogbnVsbCwgXCJtb2RlbF9uYW1lXCI6IFwiZ3B0LTRcIiwgXCJ0
ZW1wZXJhdHVyZVwiOiAwLjcsIFwiY2xhc3NcIjogXCJDaGF0T3BlbkFJXCJ9IiwgImRlbGVnYXRp
b25fZW5hYmxlZD8iOiBmYWxzZSwgInRvb2xzX25hbWVzIjogW119XUqGAQoKY3Jld190YXNrcxJ4
CnZbeyJpZCI6ICJmZjA4MDJhNS01YTRiLTRiZTgtYmUwMy1hZWEwNDU5ODYxZmMiLCAiYXN5bmNf
ZXhlY3V0aW9uPyI6IGZhbHNlLCAiYWdlbnRfcm9sZSI6ICJTY29yZXIiLCAidG9vbHNfbmFtZXMi
OiBbXX1dSigKCHBsYXRmb3JtEhwKGm1hY09TLTE0LjMtYXJtNjQtYXJtLTY0Yml0ShwKEHBsYXRm
b3JtX3JlbGVhc2USCAoGMjMuMy4wShsKD3BsYXRmb3JtX3N5c3RlbRIICgZEYXJ3aW5KewoQcGxh
dGZvcm1fdmVyc2lvbhJnCmVEYXJ3aW4gS2VybmVsIFZlcnNpb24gMjMuMy4wOiBXZWQgRGVjIDIw
IDIxOjMwOjU5IFBTVCAyMDIzOyByb290OnhudS0xMDAwMi44MS41fjcvUkVMRUFTRV9BUk02NF9U
NjAzMEoKCgRjcHVzEgIYDHoCGAES3QcKEHqFqLVvwPedeuAmoET/+Q4SCJmZkPJevJVMKgxDcmV3
IENyZWF0ZWQwATkQUxV9V3K1F0G4Kxd9V3K1F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjE0LjBK
GgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43SjEKB2NyZXdfaWQSJgokZWZhYzA0NWQtOWYxNS00
MzM1LWE4MmMtZGQ1ZmMxMDU3MDQ4ShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1ZW50aWFsShUKDWNy
ZXdfbGFuZ3VhZ2USBAoCZW5KGgoUY3Jld19udW1iZXJfb2ZfdGFza3MSAhgBShsKFWNyZXdfbnVt
YmVyX29mX2FnZW50cxICGAFKyAIKC2NyZXdfYWdlbnRzErgCCrUCW3siaWQiOiAiNzdmODRiM2It
MzczZi00MDQ5LTg4ZmYtMTJiZTQ4MDVjOGQzIiwgInJvbGUiOiAiU2NvcmVyIiwgIm1lbW9yeV9l
bmFibGVkPyI6IHRydWUsICJ2ZXJib3NlPyI6IGZhbHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9y
cG0iOiBudWxsLCAiaTE4biI6ICJlbiIsICJsbG0iOiAie1wibmFtZVwiOiBudWxsLCBcIm1vZGVs
X25hbWVcIjogXCJncHQtNFwiLCBcInRlbXBlcmF0dXJlXCI6IDAuNywgXCJjbGFzc1wiOiBcIkNo
YXRPcGVuQUlcIn0iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IGZhbHNlLCAidG9vbHNfbmFtZXMi
OiBbXX1dSoYBCgpjcmV3X3Rhc2tzEngKdlt7ImlkIjogImIwOTgxNjI1LWE0YjQtNDcyNi1hODVm
LTQ1NzcxNzg5NjQzMSIsICJhc3luY19leGVjdXRpb24/IjogZmFsc2UsICJhZ2VudF9yb2xlIjog
IlNjb3JlciIsICJ0b29sc19uYW1lcyI6IFtdfV1KKAoIcGxhdGZvcm0SHAoabWFjT1MtMTQuMy1h
cm02NC1hcm0tNjRiaXRKHAoQcGxhdGZvcm1fcmVsZWFzZRIICgYyMy4zLjBKGwoPcGxhdGZvcm1f
c3lzdGVtEggKBkRhcndpbkp7ChBwbGF0Zm9ybV92ZXJzaW9uEmcKZURhcndpbiBLZXJuZWwgVmVy
c2lvbiAyMy4zLjA6IFdlZCBEZWMgMjAgMjE6MzA6NTkgUFNUIDIwMjM7IHJvb3Q6eG51LTEwMDAy
LjgxLjV+Ny9SRUxFQVNFX0FSTTY0X1Q2MDMwSgoKBGNwdXMSAhgMegIYARLdBwoQMGkaO8s71aTo
ahUeMT5bhxIIrhxP4gFLdo0qDENyZXcgQ3JlYXRlZDABObi8VYBXcrUXQVhDV4BXcrUXShoKDmNy
ZXdhaV92ZXJzaW9uEggKBjAuMTQuMEoaCg5weXRob25fdmVyc2lvbhIICgYzLjExLjdKMQoHY3Jl
d19pZBImCiRhYjA2MGQ3ZS0zYzYxLTRkN2UtYWYwMS01ZjE1OTdmYzhkNDdKHAoMY3Jld19wcm9j
ZXNzEgwKCnNlcXVlbnRpYWxKFQoNY3Jld19sYW5ndWFnZRIECgJlbkoaChRjcmV3X251bWJlcl9v
Zl90YXNrcxICGAFKGwoVY3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAUrIAgoLY3Jld19hZ2VudHMS
uAIKtQJbeyJpZCI6ICIxODBlOTQ4Yi1kZTBjLTRhNmYtYTI2Zi0zYTVmOWI2NWViNGYiLCAicm9s
ZSI6ICJTY29yZXIiLCAibWVtb3J5X2VuYWJsZWQ/IjogdHJ1ZSwgInZlcmJvc2U/IjogZmFsc2Us
ICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51bGwsICJpMThuIjogImVuIiwgImxsbSI6ICJ7
XCJuYW1lXCI6IG51bGwsIFwibW9kZWxfbmFtZVwiOiBcImdwdC00XCIsIFwidGVtcGVyYXR1cmVc
IjogMC43LCBcImNsYXNzXCI6IFwiQ2hhdE9wZW5BSVwifSIsICJkZWxlZ2F0aW9uX2VuYWJsZWQ/
IjogZmFsc2UsICJ0b29sc19uYW1lcyI6IFtdfV1KhgEKCmNyZXdfdGFza3MSeAp2W3siaWQiOiAi
NDUxZGNhOGEtZjUzYy00YjM3LTkxMzUtZGU4MmVkNTRkMDViIiwgImFzeW5jX2V4ZWN1dGlvbj8i
OiBmYWxzZSwgImFnZW50X3JvbGUiOiAiU2NvcmVyIiwgInRvb2xzX25hbWVzIjogW119XUooCghw
bGF0Zm9ybRIcChptYWNPUy0xNC4zLWFybTY0LWFybS02NGJpdEocChBwbGF0Zm9ybV9yZWxlYXNl
EggKBjIzLjMuMEobCg9wbGF0Zm9ybV9zeXN0ZW0SCAoGRGFyd2luSnsKEHBsYXRmb3JtX3ZlcnNp
b24SZwplRGFyd2luIEtlcm5lbCBWZXJzaW9uIDIzLjMuMDogV2VkIERlYyAyMCAyMTozMDo1OSBQ
U1QgMjAyMzsgcm9vdDp4bnUtMTAwMDIuODEuNX43L1JFTEVBU0VfQVJNNjRfVDYwMzBKCgoEY3B1
cxICGAx6AhgB
headers:
Accept:
- '*/*'
Accept-Encoding:
- gzip, deflate, br
Connection:
- keep-alive
Content-Length:
- '7248'
Content-Type:
- application/x-protobuf
User-Agent:
- OTel-OTLP-Exporter-Python/1.22.0
method: POST
uri: http://telemetry.crewai.com:4318/v1/traces
response:
body:
string: "\n\0"
headers:
Content-Length:
- '2'
Content-Type:
- application/x-protobuf
Date:
- Tue, 20 Feb 2024 02:49:15 GMT
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "Progressively summarize the
lines of conversation provided, adding onto the previous summary returning a
new summary.\n\nEXAMPLE\nCurrent summary:\nThe human asks what the AI thinks
of artificial intelligence. The AI thinks artificial intelligence is a force
for good.\n\nNew lines of conversation:\nHuman: Why do you think artificial
intelligence is a force for good?\nAI: Because artificial intelligence will
help humans reach their full potential.\n\nNew summary:\nThe human asks what
the AI thinks of artificial intelligence. The AI thinks artificial intelligence
is a force for good because it will help humans reach their full potential.\nEND
OF EXAMPLE\n\nCurrent summary:\n\n\nNew lines of conversation:\nHuman: Give
me an integer score between 1-5 for the following title: ''The impact of AI
in the future of work''\nYour final answer must be: The score of the title.\nAI:
4\n\nNew summary:"}], "model": "gpt-4", "n": 1, "stream": false, "temperature":
0.7}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '1007'
content-type:
- application/json
cookie:
- __cf_bm=Ru2FKLJKCKm88s_DX8Mq9qJ47KVzLXTzKgnKsJTlABI-1708397354-1.0-AQh3Ie3Pr21iUgelcsLQAfZsyez2JIV9depVidctxAY5ZSSNr2vj5B7ht1meQxkc4krOrDbgy9Ljf5p74nOCQlc=;
_cfuvid=vnpvno_JVcoaEfWoEMif6lomt7v63tB2n2IhYZJ5lT8-1708397354882-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
IfQIACBW6qxXU+1cmNXlgWpCR5FjmU4D/ueBc4LbIgJH0Zi4gQ2H0wFnPERPfDvX1nq8GsfCG+m3
vwIgsycJUkkUVGHzwbraXv9cnBdKbZMvzfc3pV1e/Zxdn7O5SqkvAOJdqlWQJIYpBprhEgJULt/S
e5KYrMbr2WY1WyyY3xS81zlJ0MGGwXwwXk5mUpsJG6U9STwJAPg9VQCae98hiXGfCmRhiCSBfwLI
ca5JgiLvjQ9RGagPyLWta5Og60RjQMR65DM/42PX9hKB4RU7TZsKJuQaretEI5umGWN7iae0vh9X
oXIaHOOTXdYCl4jgVZTTI5PBYohrzWC/ANYEDMZy+nxItpD/Rl3lfLCOd54kyirPjQUaxRXeHuUa
Iwnyga0K818AL84rV/7YIOu4sOEtcKZLHwNsswoUpxyCmO3ctwrkeMZ0sha3JKl2f8dbbMqDdtYZ
XwbLKs/FvzAAAw==
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85836f6d08eb1ab1-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- br
Content-Type:
- application/json
Date:
- Tue, 20 Feb 2024 02:49:17 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '1797'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299764'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 47ms
x-request-id:
- req_2d47c96f83cd1d7f135dc5556fc7043a
status:
code: 200
message: OK
- request:
body: '{"messages": [{"role": "user", "content": "4"}], "model": "gpt-4", "tool_choice":
{"type": "function", "function": {"name": "ScoreOutput"}}, "tools": [{"type":
"function", "function": {"name": "ScoreOutput", "description": "Correctly extracted
`ScoreOutput` with all the required parameters with correct types", "parameters":
{"properties": {"score": {"title": "Score", "type": "integer"}}, "required":
["score"], "type": "object"}}}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate, br
connection:
- keep-alive
content-length:
- '435'
content-type:
- application/json
cookie:
- __cf_bm=Ru2FKLJKCKm88s_DX8Mq9qJ47KVzLXTzKgnKsJTlABI-1708397354-1.0-AQh3Ie3Pr21iUgelcsLQAfZsyez2JIV9depVidctxAY5ZSSNr2vj5B7ht1meQxkc4krOrDbgy9Ljf5p74nOCQlc=;
_cfuvid=vnpvno_JVcoaEfWoEMif6lomt7v63tB2n2IhYZJ5lT8-1708397354882-0.0-604800000
host:
- api.openai.com
user-agent:
- OpenAI/Python 1.12.0
x-stainless-arch:
- arm64
x-stainless-async:
- 'false'
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 1.12.0
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.11.7
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
IRwLACBG01VPU+1snTOje1ElnIIn/z51E1watMf5mNqmL92CYRfI1BJNIKCybJ2L2x16PbIm3Psr
AC5KSlDN3yplg2mM67WrTm//WJmrLdct5+X5bTteL4960/NFzUIA9O9LraqeeNPFQF14B0FOLj/S
JSU6o/a4Nxn1BiPhFetLbSjBWaga/UZ72On1Opz7hdKZEg8CAH5LA4Dv3nco0S5aES8MgRL4EsDk
jaYE33Je5OrNVSwAmbB1oxKuNkY4VXlvXtSbMeRQDv7WM4v065sxL5Pt+VV3/Wzn4CrOt+q1td3b
w0ObzA0npJ75DoNCPTAKMaisShKGALo3O6GnLpRP+qSuQl2pMACa+HtK8PfRAY/Myif9SIn+o/un
6tp/Ucee6PF/ink0fhaSf88LhjNqHfByQ9gIJZgrH2jMfwE8WbJcG+cMQ/I2VC+VX2mXKTHsqgS4
ZzIAbJIyPzyQEWmjjhgiwSgCCy/ThZvpFNLCqrL4FwM=
headers:
CF-Cache-Status:
- DYNAMIC
CF-RAY:
- 85836f7b6ea71ab1-GRU
Cache-Control:
- no-cache, must-revalidate
Connection:
- keep-alive
Content-Encoding:
- br
Content-Type:
- application/json
Date:
- Tue, 20 Feb 2024 02:49:18 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
access-control-allow-origin:
- '*'
alt-svc:
- h3=":443"; ma=86400
openai-model:
- gpt-4-0613
openai-organization:
- crewai-iuxna1
openai-processing-ms:
- '679'
openai-version:
- '2020-10-01'
strict-transport-security:
- max-age=15724800; includeSubDomains
x-ratelimit-limit-requests:
- '10000'
x-ratelimit-limit-tokens:
- '300000'
x-ratelimit-remaining-requests:
- '9999'
x-ratelimit-remaining-tokens:
- '299981'
x-ratelimit-reset-requests:
- 6ms
x-ratelimit-reset-tokens:
- 3ms
x-request-id:
- req_b225a2bd54cb8285069537b2c3ed5510
status:
code: 200
message: OK
version: 1

File diff suppressed because it is too large Load Diff

View File

@@ -131,15 +131,7 @@ def test_crew_creation():
assert (
crew.kickoff()
== """1. **The Evolution of AI: From Old Concepts to New Frontiers** - Journey with us as we traverse the fascinating timeline of artificial intelligence - from its philosophical and mathematical infancy to the sophisticated, problem-solving tool it has become today. This riveting account will not only educate but also inspire, as we delve deep into the milestones that brought us here and shine a beacon on the potential that lies ahead.
2. **AI Agents in Healthcare: The Future of Medicine** - Imagine a world where illnesses are diagnosed before symptoms appear, where patient outcomes are not mere guesses but accurate predictions. This is the world AI is crafting in healthcare - a revolution that's saving lives and changing the face of medicine as we know it. This article will spotlight this transformative journey, underlining the profound impact AI is having on our health and well-being.
3. **AI and Ethics: Navigating the Moral Landscape of Artificial Intelligence** - As AI becomes an integral part of our lives, it brings along a plethora of ethical dilemmas. This thought-provoking piece will navigate the complex moral landscape of AI, addressing critical concerns like privacy, job displacement, and decision-making biases. It serves as a much-needed discussion platform for the societal implications of AI, urging us to look beyond the technology and into the mirror.
4. **Demystifying AI Algorithms: A Deep Dive into Machine Learning** - Ever wondered what goes on behind the scenes of AI? This enlightening article will break down the complex world of machine learning algorithms into digestible insights, unraveling the mystery of AI's 'black box'. It's a rare opportunity for the non-technical audience to appreciate the inner workings of AI, fostering a deeper understanding of this revolutionary technology.
5. **AI Startups: The Game Changers of the Tech Industry** - In the world of tech, AI startups are the bold pioneers charting new territories. This article will spotlight these game changers, showcasing how their innovative products and services are driving the AI revolution. It's a unique opportunity to catch a glimpse of the entrepreneurial side of AI, offering inspiration for the tech enthusiasts and dreamers alike."""
== '1. "The Role of AI in Predicting and Managing Pandemics"\nHighlight: \nIn an era where global health crises can emerge from any corner of the world, the role of AI in predicting and managing pandemics has never been more critical. Through intelligent data gathering and predictive analytics, AI can potentially identify the onset of pandemics before they reach critical mass, offering a proactive solution to a reactive problem. This article explores the intersection of AI and epidemiology, delving into how this cutting-edge technology is revolutionizing our approach to global health crises.\n\n2. "AI and the Future of Work: Will Robots Take Our Jobs?"\nHighlight: \nThe rise of AI has sparked both excitement and apprehension about the future of work. Will robots replace us, or will they augment our capabilities? This article delves into the heart of this controversial issue, examining the potential of AI to disrupt job markets, transform industries, and redefine the concept of work. It\'s not just a question of job security—it\'s a discussion about the kind of world we want to live in.\n\n3. "AI in Art and Creativity: A New Frontier in Innovation"\nHighlight: \nArt and creativity, once seen as the exclusive domain of human expression, are being redefined by the advent of AI. From algorithmic compositions to AI-assisted design, this article explores the burgeoning field of AI in art and creativity. It\'s a journey into a new frontier of innovation, one where the lines between human creativity and artificial intelligence blur into an exciting, uncharted territory.\n\n4. "Ethics in AI: Balancing Innovation with Responsibility"\nHighlight: \nAs AI continues to permeate every facet of our lives, questions about its ethical implications grow louder. This article invites readers into a thoughtful exploration of the moral landscape of AI. It challenges us to balance the relentless pursuit of innovation with the weighty responsibilities that come with it, asking: How can we harness the power of AI without losing sight of our human values?\n\n5. "AI in Education: Personalizing Learning for the Next Generation"\nHighlight: \nEducation is poised for a transformation as AI enters the classroom, promising a future where learning is personalized, not generalized. This article delves into how AI can tailor educational experiences to individual learning styles, making education more effective and accessible. It\'s a glimpse into a future where AI is not just a tool for learning, but an active participant in shaping the educational journey of the next generation.'
)
@@ -160,22 +152,7 @@ def test_hierarchical_process():
assert (
crew.kickoff()
== """Here are the 5 interesting ideas with a highlight paragraph for each:
1. "The Future of AI in Healthcare: Predicting Diseases Before They Happen"
- "Imagine a future where AI empowers us to detect diseases before they arise, transforming healthcare from reactive to proactive. Machine learning algorithms, trained on vast amounts of patient data, could potentially predict heart diseases, strokes, or cancers before they manifest, allowing for early interventions and significantly improving patient outcomes. This article will delve into the rapid advancements in AI within the healthcare sector and how these technologies are ushering us into a new era of predictive medicine."
2. "How AI is Changing the Way We Cook: An Insight into Smart Kitchens"
- "From the humble home kitchen to grand culinary stages, AI is revolutionizing the way we cook. Smart appliances, equipped with advanced sensors and predictive algorithms, are turning kitchens into creative playgrounds, offering personalized recipes, precise cooking instructions, and even automated meal preparation. This article explores the fascinating intersection of AI and gastronomy, revealing how technology is transforming our culinary experiences."
3. "Redefining Fitness with AI: Personalized Workout Plans and Nutritional Advice"
- "Fitness reimagined that's the promise of AI in the wellness industry. Picture a personal trainer who knows your strengths, weaknesses, and nutritional needs intimately. An AI-powered fitness app can provide this personalized experience, adapting your workout plans and dietary recommendations in real-time based on your progress and feedback. Join us as we unpack how AI is revolutionizing the fitness landscape, offering personalized, data-driven approaches to health and well-being."
4. "AI and the Art World: How Technology is Shaping Creativity"
- "Art and AI may seem like unlikely partners, but their synergy is sparking a creative revolution. AI algorithms are now creating mesmerizing artworks, challenging our perceptions of creativity and originality. From AI-assisted painting to generative music composition, this article will take you on a journey through the fascinating world of AI in art, exploring how technology is reshaping the boundaries of human creativity."
5. "AI in Space Exploration: The Next Frontier"
- "The vast expanse of space, once the sole domain of astronauts and rovers, is the next frontier for AI. AI technology is playing an increasingly vital role in space exploration, from predicting space weather to assisting in interstellar navigation. This article will delve into the exciting intersection of AI and space exploration, exploring how these advanced technologies are helping us uncover the mysteries of the cosmos.\""""
== """Here are the 5 unique and interesting ideas for articles along with a highlight paragraph for each:\n\n1) The Future of AI and Machine Learning: A deeper look into the future of AI and machine learning, revealing the potential of both and their implications on society. The article will provide an informed vision of the future, addressing the possibilities that AI and machine learning could bring to our daily lives, from healthcare to education, and the challenges we might face.\n\n2) Startups Revolutionizing Traditional Industries with Tech: This article will narrate the journey of game-changing startups that are transforming traditional industries with innovative technology. It will delve into their stories, exploring how they leverage technology to disrupt the status quo, the hurdles they've overcome, and the impact they're making.\n\n3) Personal Development in the Age of Technology: In this article, we will explore how technology has changed the landscape of personal development. We will cover how digital tools and platforms are empowering individuals to learn, grow, and achieve their goals faster than ever before.\n\n4) Ethical Issues in Software Engineering: This article will investigate the ethical dilemmas that are arising in the realm of software engineering. It will discuss the moral implications of new technologies, the responsibilities of software engineers, and the need for a robust code of ethics in this rapidly evolving field.\n\n5) Entrepreneurship in the Digital Era: In this piece, we will delve into the role of digital technology in shaping the entrepreneurial landscape. We will discuss how the digital era has given rise to new entrepreneurial opportunities, the challenges that come with it, and the skills required to thrive in this new era."""
)
@@ -197,6 +174,7 @@ def test_crew_with_delegating_agents():
tasks = [
Task(
description="Produce and amazing 1 paragraph draft of an article about AI Agents.",
expected_output="A 4 paragraph article about AI.",
agent=ceo,
)
]
@@ -209,7 +187,7 @@ def test_crew_with_delegating_agents():
assert (
crew.kickoff()
== '"AI agents, the digital masterminds at the heart of the 21st-century revolution, are shaping a new era of intelligence and innovation. They are autonomous entities, capable of observing their environment, making decisions, and acting on them, all in pursuit of a specific goal. From streamlining operations in logistics to personalizing customer experiences in retail, AI agents are transforming how businesses operate. But their potential extends far beyond the corporate world. They are the sentinels protecting our digital frontiers, the virtual assistants making our lives easier, and the unseen hands guiding autonomous vehicles. As this technology evolves, AI agents will play an increasingly central role in our world, ushering in an era of unprecedented efficiency, personalization, and productivity. But with great power comes great responsibility, and understanding and harnessing this potential responsibly will be one of our greatest challenges and opportunities in the coming years."'
== "In today's technological landscape, Artificial Intelligence (AI) agents have emerged as key players in shaping the future of various industries. These agents, which are essentially computer programs that can learn, adapt, and operate autonomously, are a testament to the rapidly evolving capabilities of AI. They are the harbingers of a new era, where machines can mimic human intelligence, and in some cases, even surpass it.\n\nAI agents are transforming the way we engage with technology, enabling a more personalized and efficient user experience. They are extensively used in areas like customer service, where chatbots can handle customer inquiries without human intervention. They have revolutionized sectors like healthcare, where AI agents can analyze patient data to predict health trends and provide personalized treatment recommendations. \n\nHowever, as AI agents continue to evolve, they also pose significant ethical and regulatory challenges. There are concerns about privacy, bias, and the potential misuse of these technologies. As a society, it's crucial to establish norms and regulations that ensure the responsible use of AI agents, balancing their benefits with potential risks.\n\nIn conclusion, AI agents are a transformative technology that is reshaping our world. The challenges they present are complex, but the opportunities they offer are immense. As we continue to explore and understand this technology, we can harness its potential to create a more efficient, personalized, and intelligent future."
)
@@ -277,18 +255,14 @@ def test_crew_verbose_levels_output(capsys):
@pytest.mark.vcr(filter_headers=["authorization"])
def test_cache_hitting_between_agents():
from unittest.mock import patch
from unittest.mock import call, patch
from langchain.tools import tool
@tool
def multiplier(numbers) -> float:
"""Useful for when you need to multiply two numbers together.
The input to this tool should be a comma separated list of numbers of
length two, representing the two numbers you want to multiply together.
For example, `1,2` would be the input if you wanted to multiply 1 by 2."""
a, b = numbers.split(",")
return int(a) * int(b)
def multiplier(first_number: int, second_number: int) -> float:
"""Useful for when you need to multiply two numbers together."""
return first_number * second_number
tasks = [
Task(
@@ -308,15 +282,16 @@ def test_cache_hitting_between_agents():
tasks=tasks,
)
assert crew._cache_handler._cache == {}
output = crew.kickoff()
assert crew._cache_handler._cache == {"multiplier-2,6": "12"}
assert output == "12"
with patch.object(CacheHandler, "read") as read:
read.return_value = "12"
crew.kickoff()
read.assert_called_with("multiplier", "2,6")
assert read.call_count == 2, "read was not called exactly twice"
# Check if read was called with the expected arguments
expected_calls = [
call(tool="multiplier", input={"first_number": 2, "second_number": 6}),
call(tool="multiplier", input={"first_number": 2, "second_number": 6}),
]
read.assert_has_calls(expected_calls, any_order=False)
@pytest.mark.vcr(filter_headers=["authorization"])
@@ -324,9 +299,10 @@ def test_api_calls_throttling(capsys):
from unittest.mock import patch
from langchain.tools import tool
from langchain_openai import ChatOpenAI
@tool
def get_final_answer(numbers) -> float:
def get_final_answer(anything) -> float:
"""Get the final answer but don't give it yet, just re-use this
tool non-stop."""
return 42
@@ -338,6 +314,7 @@ def test_api_calls_throttling(capsys):
max_iter=5,
allow_delegation=False,
verbose=True,
llm=ChatOpenAI(model="gpt-4-0125-preview"),
)
task = Task(
@@ -356,6 +333,34 @@ def test_api_calls_throttling(capsys):
moveon.assert_called()
@pytest.mark.vcr(filter_headers=["authorization"])
def test_crew_full_ouput():
agent = Agent(
role="test role",
goal="test goal",
backstory="test backstory",
allow_delegation=False,
verbose=True,
)
task1 = Task(
description="just say hi!",
agent=agent,
)
task2 = Task(
description="just say hello!",
agent=agent,
)
crew = Crew(agents=[agent], tasks=[task1, task2], full_output=True)
result = crew.kickoff()
assert result == {
"final_output": "Hello!",
"tasks_outputs": [task1.output, task2.output],
}
def test_agents_rpm_is_never_set_if_crew_max_RPM_is_not_set():
agent = Agent(
role="test role",
@@ -413,11 +418,141 @@ def test_async_task_execution():
start.return_value = thread
with patch.object(threading.Thread, "join", wraps=thread.join()) as join:
list_ideas.output = TaskOutput(
description="A 4 paragraph article about AI.", result="ok"
description="A 4 paragraph article about AI.", raw_output="ok"
)
list_important_history.output = TaskOutput(
description="A 4 paragraph article about AI.", result="ok"
description="A 4 paragraph article about AI.", raw_output="ok"
)
crew.kickoff()
start.assert_called()
join.assert_called()
def test_set_agents_step_callback():
from unittest.mock import patch
researcher_agent = Agent(
role="Researcher",
goal="Make the best research and analysis on content about AI and AI agents",
backstory="You're an expert researcher, specialized in technology, software engineering, AI and startups. You work as a freelancer and is now working on doing research and analysis for a new customer.",
allow_delegation=False,
)
list_ideas = Task(
description="Give me a list of 5 interesting ideas to explore for na article, what makes them unique and interesting.",
expected_output="Bullet point list of 5 important events.",
agent=researcher_agent,
async_execution=True,
)
crew = Crew(
agents=[researcher_agent],
process=Process.sequential,
tasks=[list_ideas],
step_callback=lambda: None,
)
with patch.object(Agent, "execute_task") as execute:
execute.return_value = "ok"
crew.kickoff()
assert researcher_agent.step_callback is not None
def test_dont_set_agents_step_callback_if_already_set():
from unittest.mock import patch
def agent_callback(_):
pass
def crew_callback(_):
pass
researcher_agent = Agent(
role="Researcher",
goal="Make the best research and analysis on content about AI and AI agents",
backstory="You're an expert researcher, specialized in technology, software engineering, AI and startups. You work as a freelancer and is now working on doing research and analysis for a new customer.",
allow_delegation=False,
step_callback=agent_callback,
)
list_ideas = Task(
description="Give me a list of 5 interesting ideas to explore for na article, what makes them unique and interesting.",
expected_output="Bullet point list of 5 important events.",
agent=researcher_agent,
async_execution=True,
)
crew = Crew(
agents=[researcher_agent],
process=Process.sequential,
tasks=[list_ideas],
step_callback=crew_callback,
)
with patch.object(Agent, "execute_task") as execute:
execute.return_value = "ok"
crew.kickoff()
assert researcher_agent.step_callback is not crew_callback
assert researcher_agent.step_callback is agent_callback
@pytest.mark.vcr(filter_headers=["authorization"])
def test_crew_function_calling_llm():
from unittest.mock import patch
from langchain.tools import tool
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(model="gpt-3.5-turbo-0125")
with patch.object(llm.client, "create", wraps=llm.client.create) as private_mock:
@tool
def learn_about_AI(topic) -> float:
"""Useful for when you need to learn about AI to write an paragraph about it."""
return "AI is a very broad field."
agent1 = Agent(
role="test role",
goal="test goal",
backstory="test backstory",
llm=ChatOpenAI(model="gpt-4-0125-preview"),
tools=[learn_about_AI],
)
essay = Task(
description="Write and then review an small paragraph on AI until it's AMAZING",
agent=agent1,
)
tasks = [essay]
crew = Crew(agents=[agent1], tasks=tasks, function_calling_llm=llm)
crew.kickoff()
private_mock.assert_called()
@pytest.mark.vcr(filter_headers=["authorization"])
def test_task_with_no_arguments():
from langchain.tools import tool
@tool
def return_data() -> str:
"Useful to get the sales related data"
return "January: 5, February: 10, March: 15, April: 20, May: 25"
researcher = Agent(
role="Researcher",
goal="Make the best research and analysis on content about AI and AI agents",
backstory="You're an expert researcher, specialized in technology, software engineering, AI and startups. You work as a freelancer and is now working on doing research and analysis for a new customer.",
tools=[return_data],
allow_delegation=False,
)
task = Task(
description="Look at the available data nd give me a sense on the total number of sales.",
agent=researcher,
)
crew = Crew(agents=[researcher], tasks=[task])
result = crew.kickoff()
assert result == "The total number of sales from January to May is 75."

View File

@@ -2,8 +2,11 @@
from unittest.mock import MagicMock, patch
from crewai.agent import Agent
from crewai.task import Task
import pytest
from pydantic import BaseModel
from pydantic_core import ValidationError
from crewai import Agent, Crew, Task
def test_task_tool_reflect_agent_tools():
@@ -74,7 +77,7 @@ def test_task_prompt_includes_expected_output():
with patch.object(Agent, "execute_task") as execute:
execute.return_value = "ok"
task.execute()
execute.assert_called_once_with(task=task._prompt(), context=None, tools=[])
execute.assert_called_once_with(task=task, context=None, tools=[])
def test_task_callback():
@@ -115,7 +118,7 @@ def test_execute_with_agent():
with patch.object(Agent, "execute_task", return_value="ok") as execute:
task.execute(agent=researcher)
execute.assert_called_once_with(task=task._prompt(), context=None, tools=[])
execute.assert_called_once_with(task=task, context=None, tools=[])
def test_async_execution():
@@ -135,4 +138,212 @@ def test_async_execution():
with patch.object(Agent, "execute_task", return_value="ok") as execute:
task.execute(agent=researcher)
execute.assert_called_once_with(task=task._prompt(), context=None, tools=[])
execute.assert_called_once_with(task=task, context=None, tools=[])
def test_multiple_output_type_error():
class Output(BaseModel):
field: str
with pytest.raises(ValidationError):
Task(
description="Give me a list of 5 interesting ideas to explore for na article, what makes them unique and interesting.",
expected_output="Bullet point list of 5 interesting ideas.",
output_json=Output,
output_pydantic=Output,
)
@pytest.mark.vcr(filter_headers=["authorization"])
def test_output_pydantic():
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_pydantic=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task])
result = crew.kickoff()
assert isinstance(result, ScoreOutput)
@pytest.mark.vcr(filter_headers=["authorization"])
def test_output_json():
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_json=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task])
result = crew.kickoff()
assert '{\n "score": 4\n}' == result
@pytest.mark.vcr(filter_headers=["authorization"])
def test_output_pydantic_to_another_task():
from langchain_openai import ChatOpenAI
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
llm=ChatOpenAI(model="gpt-4-0125-preview"),
function_calling_llm=ChatOpenAI(model="gpt-3.5-turbo-0125"),
verbose=True,
)
task1 = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_pydantic=ScoreOutput,
agent=scorer,
)
task2 = Task(
description="Given the score the title 'The impact of AI in the future of work' got, give me an integer score between 1-5 for the following title: 'Return of the Jedi', you MUST give it a score, use your best judgment",
expected_output="The score of the title.",
output_pydantic=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task1, task2], verbose=2)
result = crew.kickoff()
assert 5 == result.score
@pytest.mark.vcr(filter_headers=["authorization"])
def test_output_json_to_another_task():
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task1 = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_json=ScoreOutput,
agent=scorer,
)
task2 = Task(
description="Given the score the title 'The impact of AI in the future of work' got, give me an integer score between 1-5 for the following title: 'Return of the Jedi'",
expected_output="The score of the title.",
output_json=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task1, task2])
result = crew.kickoff()
assert '{\n "score": 5\n}' == result
@pytest.mark.vcr(filter_headers=["authorization"])
def test_save_task_output():
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_file="score.json",
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task])
with patch.object(Task, "_save_file") as save_file:
save_file.return_value = None
crew.kickoff()
save_file.assert_called_once()
@pytest.mark.vcr(filter_headers=["authorization"])
def test_save_task_json_output():
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_file="score.json",
output_json=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task])
with patch.object(Task, "_save_file") as save_file:
save_file.return_value = None
crew.kickoff()
save_file.assert_called_once_with('{\n "score": 4\n}')
@pytest.mark.vcr(filter_headers=["authorization"])
def test_save_task_pydantic_output():
class ScoreOutput(BaseModel):
score: int
scorer = Agent(
role="Scorer",
goal="Score the title",
backstory="You're an expert scorer, specialized in scoring titles.",
allow_delegation=False,
)
task = Task(
description="Give me an integer score between 1-5 for the following title: 'The impact of AI in the future of work'",
expected_output="The score of the title.",
output_file="score.json",
output_pydantic=ScoreOutput,
agent=scorer,
)
crew = Crew(agents=[scorer], tasks=[task])
with patch.object(Task, "_save_file") as save_file:
save_file.return_value = None
crew.kickoff()
save_file.assert_called_once_with('{"score":4}')