mirror of
https://github.com/All-Hands-AI/OpenHands.git
synced 2026-01-09 23:08:04 -05:00
ci(docs): only generate autogen python docs on deploy (#1501)
* ci(docs): only generate autogen python docs on deploy * poetry * workdir
This commit is contained in:
13
.github/workflows/deploy-docs.yml
vendored
13
.github/workflows/deploy-docs.yml
vendored
@@ -12,9 +12,6 @@ jobs:
|
||||
build:
|
||||
name: Build Docusaurus
|
||||
runs-on: ubuntu-latest
|
||||
defaults:
|
||||
run:
|
||||
working-directory: docs
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
@@ -24,11 +21,17 @@ jobs:
|
||||
node-version: 18
|
||||
cache: npm
|
||||
cache-dependency-path: docs/package-lock.json
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: "3.11"
|
||||
|
||||
- name: Generate Python Docs
|
||||
run: rm -rf docs/modules/python && pip install pydoc-markdown && pydoc-markdown
|
||||
- name: Install dependencies
|
||||
run: npm ci
|
||||
run: cd docs && npm ci
|
||||
- name: Build website
|
||||
run: npm run build
|
||||
run: cd docs && npm run build
|
||||
|
||||
- name: Upload Build Artifact
|
||||
if: github.ref == 'refs/heads/main'
|
||||
|
||||
@@ -41,8 +41,3 @@ repos:
|
||||
entry: mypy --config-file dev_config/python/mypy.ini opendevin/ agenthub/
|
||||
always_run: true
|
||||
pass_filenames: false
|
||||
|
||||
- repo: https://github.com/NiklasRosenstein/pydoc-markdown
|
||||
rev: develop
|
||||
hooks:
|
||||
- id: pydoc-markdown
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
---
|
||||
sidebar_label: agent
|
||||
title: agenthub.SWE_agent.agent
|
||||
---
|
||||
|
||||
## SWEAgent Objects
|
||||
|
||||
```python
|
||||
class SWEAgent(Agent)
|
||||
```
|
||||
|
||||
An attempt to recreate swe_agent with output parsing, prompting style, and Application Computer Interface (ACI).
|
||||
|
||||
SWE-agent includes ACI functions like 'goto', 'search_for', 'edit', 'scroll', 'run'
|
||||
|
||||
#### step
|
||||
|
||||
```python
|
||||
def step(state: State) -> Action
|
||||
```
|
||||
|
||||
SWE-Agent step:
|
||||
1. Get context - past actions, custom commands, current step
|
||||
2. Perform think-act - prompt model for action and reasoning
|
||||
3. Catch errors - ensure model takes action (5 attempts max)
|
||||
|
||||
#### reset
|
||||
|
||||
```python
|
||||
def reset() -> None
|
||||
```
|
||||
|
||||
Used to reset the agent
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
---
|
||||
sidebar_label: parser
|
||||
title: agenthub.SWE_agent.parser
|
||||
---
|
||||
|
||||
#### get\_action\_from\_string
|
||||
|
||||
```python
|
||||
def get_action_from_string(command_string: str,
|
||||
path: str,
|
||||
line: int,
|
||||
thoughts: str = '') -> Action | None
|
||||
```
|
||||
|
||||
Parses the command string to find which command the agent wants to run
|
||||
Converts the command into a proper Action and returns
|
||||
|
||||
#### parse\_command
|
||||
|
||||
```python
|
||||
def parse_command(input_str: str, path: str, line: int)
|
||||
```
|
||||
|
||||
Parses a given string and separates the command (enclosed in triple backticks) from any accompanying text.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `input_str` _str_ - The input string to be parsed.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- `tuple` - A tuple containing the command and the accompanying text (if any).
|
||||
|
||||
@@ -1,58 +0,0 @@
|
||||
---
|
||||
sidebar_label: codeact_agent
|
||||
title: agenthub.codeact_agent.codeact_agent
|
||||
---
|
||||
|
||||
#### truncate\_observation
|
||||
|
||||
```python
|
||||
def truncate_observation(observation: str, max_chars: int = 5000) -> str
|
||||
```
|
||||
|
||||
Truncate the middle of the observation if it is too long.
|
||||
|
||||
## CodeActAgent Objects
|
||||
|
||||
```python
|
||||
class CodeActAgent(Agent)
|
||||
```
|
||||
|
||||
The Code Act Agent is a minimalist agent.
|
||||
The agent works by passing the model a list of action-observation pairs and prompting the model to take the next step.
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(llm: LLM) -> None
|
||||
```
|
||||
|
||||
Initializes a new instance of the CodeActAgent class.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- llm (LLM): The llm to be used by this agent
|
||||
|
||||
#### step
|
||||
|
||||
```python
|
||||
def step(state: State) -> Action
|
||||
```
|
||||
|
||||
Performs one step using the Code Act Agent.
|
||||
This includes gathering info on previous steps and prompting the model to make a command to execute.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- state (State): used to get updated info and background commands
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- CmdRunAction(command) - command action to run
|
||||
- AgentEchoAction(content=INVALID_INPUT_MESSAGE) - invalid command output
|
||||
|
||||
|
||||
**Raises**:
|
||||
|
||||
- NotImplementedError - for actions other than CmdOutputObservation or AgentMessageObservation
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
---
|
||||
sidebar_label: agent
|
||||
title: agenthub.delegator_agent.agent
|
||||
---
|
||||
|
||||
## DelegatorAgent Objects
|
||||
|
||||
```python
|
||||
class DelegatorAgent(Agent)
|
||||
```
|
||||
|
||||
The planner agent utilizes a special prompting strategy to create long term plans for solving problems.
|
||||
The agent is given its previous action-observation pairs, current task, and hint based on last action taken at every step.
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(llm: LLM)
|
||||
```
|
||||
|
||||
Initialize the Delegator Agent with an LLM
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- llm (LLM): The llm to be used by this agent
|
||||
|
||||
#### step
|
||||
|
||||
```python
|
||||
def step(state: State) -> Action
|
||||
```
|
||||
|
||||
Checks to see if current step is completed, returns AgentFinishAction if True.
|
||||
Otherwise, creates a plan prompt and sends to model for inference, returning the result as the next action.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- state (State): The current state given the previous actions and observations
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- AgentFinishAction: If the last state was 'completed', 'verified', or 'abandoned'
|
||||
- Action: The next action to take based on llm response
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: agent
|
||||
title: agenthub.dummy_agent.agent
|
||||
---
|
||||
|
||||
## DummyAgent Objects
|
||||
|
||||
```python
|
||||
class DummyAgent(Agent)
|
||||
```
|
||||
|
||||
The DummyAgent is used for e2e testing. It just sends the same set of actions deterministically,
|
||||
without making any LLM calls.
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
---
|
||||
sidebar_label: agent
|
||||
title: agenthub.micro.agent
|
||||
---
|
||||
|
||||
#### my\_encoder
|
||||
|
||||
```python
|
||||
def my_encoder(obj)
|
||||
```
|
||||
|
||||
Encodes objects as dictionaries
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- obj (Object): An object that will be converted
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- dict: If the object can be converted it is returned in dict format
|
||||
|
||||
#### to\_json
|
||||
|
||||
```python
|
||||
def to_json(obj, **kwargs)
|
||||
```
|
||||
|
||||
Serialize an object to str format
|
||||
|
||||
@@ -1,62 +0,0 @@
|
||||
---
|
||||
sidebar_label: agent
|
||||
title: agenthub.monologue_agent.agent
|
||||
---
|
||||
|
||||
## MonologueAgent Objects
|
||||
|
||||
```python
|
||||
class MonologueAgent(Agent)
|
||||
```
|
||||
|
||||
The Monologue Agent utilizes long and short term memory to complete tasks.
|
||||
Long term memory is stored as a LongTermMemory object and the model uses it to search for examples from the past.
|
||||
Short term memory is stored as a Monologue object and the model can condense it as necessary.
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(llm: LLM)
|
||||
```
|
||||
|
||||
Initializes the Monologue Agent with an llm, monologue, and memory.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- llm (LLM): The llm to be used by this agent
|
||||
|
||||
#### step
|
||||
|
||||
```python
|
||||
def step(state: State) -> Action
|
||||
```
|
||||
|
||||
Modifies the current state by adding the most recent actions and observations, then prompts the model to think about it's next action to take using monologue, memory, and hint.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- state (State): The current state based on previous steps taken
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- Action: The next action to take based on LLM response
|
||||
|
||||
#### search\_memory
|
||||
|
||||
```python
|
||||
def search_memory(query: str) -> List[str]
|
||||
```
|
||||
|
||||
Uses VectorIndexRetriever to find related memories within the long term memory.
|
||||
Uses search to produce top 10 results.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- query (str): The query that we want to find related memories for
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- List[str]: A list of top 10 text results that matched the query
|
||||
|
||||
@@ -1,38 +0,0 @@
|
||||
---
|
||||
sidebar_label: json
|
||||
title: agenthub.monologue_agent.utils.json
|
||||
---
|
||||
|
||||
#### my\_encoder
|
||||
|
||||
```python
|
||||
def my_encoder(obj)
|
||||
```
|
||||
|
||||
Encodes objects as dictionaries
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- obj (Object): An object that will be converted
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- dict: If the object can be converted it is returned in dict format
|
||||
|
||||
#### dumps
|
||||
|
||||
```python
|
||||
def dumps(obj, **kwargs)
|
||||
```
|
||||
|
||||
Serialize an object to str format
|
||||
|
||||
#### loads
|
||||
|
||||
```python
|
||||
def loads(s, **kwargs)
|
||||
```
|
||||
|
||||
Create a JSON object from str
|
||||
|
||||
@@ -1,52 +0,0 @@
|
||||
---
|
||||
sidebar_label: memory
|
||||
title: agenthub.monologue_agent.utils.memory
|
||||
---
|
||||
|
||||
## LongTermMemory Objects
|
||||
|
||||
```python
|
||||
class LongTermMemory()
|
||||
```
|
||||
|
||||
Responsible for storing information that the agent can call on later for better insights and context.
|
||||
Uses chromadb to store and search through memories.
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__()
|
||||
```
|
||||
|
||||
Initialize the chromadb and set up ChromaVectorStore for later use.
|
||||
|
||||
#### add\_event
|
||||
|
||||
```python
|
||||
def add_event(event: dict)
|
||||
```
|
||||
|
||||
Adds a new event to the long term memory with a unique id.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- event (dict): The new event to be added to memory
|
||||
|
||||
#### search
|
||||
|
||||
```python
|
||||
def search(query: str, k: int = 10)
|
||||
```
|
||||
|
||||
Searches through the current memory using VectorIndexRetriever
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- query (str): A query to match search results to
|
||||
- k (int): Number of top results to return
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- List[str]: List of top k results found in current memory
|
||||
|
||||
@@ -1,80 +0,0 @@
|
||||
---
|
||||
sidebar_label: monologue
|
||||
title: agenthub.monologue_agent.utils.monologue
|
||||
---
|
||||
|
||||
## Monologue Objects
|
||||
|
||||
```python
|
||||
class Monologue()
|
||||
```
|
||||
|
||||
The monologue is a representation for the agent's internal monologue where it can think.
|
||||
The agent has the capability of using this monologue for whatever it wants.
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__()
|
||||
```
|
||||
|
||||
Initialize the empty list of thoughts
|
||||
|
||||
#### add\_event
|
||||
|
||||
```python
|
||||
def add_event(t: dict)
|
||||
```
|
||||
|
||||
Adds an event to memory if it is a valid event.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- t (dict): The thought that we want to add to memory
|
||||
|
||||
|
||||
**Raises**:
|
||||
|
||||
- AgentEventTypeError: If t is not a dict
|
||||
|
||||
#### get\_thoughts
|
||||
|
||||
```python
|
||||
def get_thoughts()
|
||||
```
|
||||
|
||||
Get the current thoughts of the agent.
|
||||
|
||||
**Returns**:
|
||||
|
||||
- List: The list of thoughts that the agent has.
|
||||
|
||||
#### get\_total\_length
|
||||
|
||||
```python
|
||||
def get_total_length()
|
||||
```
|
||||
|
||||
Gives the total number of characters in all thoughts
|
||||
|
||||
**Returns**:
|
||||
|
||||
- Int: Total number of chars in thoughts.
|
||||
|
||||
#### condense
|
||||
|
||||
```python
|
||||
def condense(llm: LLM)
|
||||
```
|
||||
|
||||
Attempts to condense the monologue by using the llm
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- llm (LLM): llm to be used for summarization
|
||||
|
||||
|
||||
**Raises**:
|
||||
|
||||
- Exception: the same exception as it got from the llm or processing the response
|
||||
|
||||
@@ -1,73 +0,0 @@
|
||||
---
|
||||
sidebar_label: prompts
|
||||
title: agenthub.monologue_agent.utils.prompts
|
||||
---
|
||||
|
||||
#### get\_summarize\_monologue\_prompt
|
||||
|
||||
```python
|
||||
def get_summarize_monologue_prompt(thoughts: List[dict])
|
||||
```
|
||||
|
||||
Gets the prompt for summarizing the monologue
|
||||
|
||||
**Returns**:
|
||||
|
||||
- str: A formatted string with the current monologue within the prompt
|
||||
|
||||
#### get\_request\_action\_prompt
|
||||
|
||||
```python
|
||||
def get_request_action_prompt(
|
||||
task: str,
|
||||
thoughts: List[dict],
|
||||
background_commands_obs: List[CmdOutputObservation] = [])
|
||||
```
|
||||
|
||||
Gets the action prompt formatted with appropriate values.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- task (str): The current task the agent is trying to accomplish
|
||||
- thoughts (List[dict]): The agent's current thoughts
|
||||
- background_commands_obs (List[CmdOutputObservation]): List of all observed background commands running
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- str: Formatted prompt string with hint, task, monologue, and background included
|
||||
|
||||
#### parse\_action\_response
|
||||
|
||||
```python
|
||||
def parse_action_response(response: str) -> Action
|
||||
```
|
||||
|
||||
Parses a string to find an action within it
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- response (str): The string to be parsed
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- Action: The action that was found in the response string
|
||||
|
||||
#### parse\_summary\_response
|
||||
|
||||
```python
|
||||
def parse_summary_response(response: str) -> List[dict]
|
||||
```
|
||||
|
||||
Parses a summary of the monologue
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- response (str): The response string to be parsed
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- List[dict]: The list of summaries output by the model
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
---
|
||||
sidebar_label: agent
|
||||
title: agenthub.planner_agent.agent
|
||||
---
|
||||
|
||||
## PlannerAgent Objects
|
||||
|
||||
```python
|
||||
class PlannerAgent(Agent)
|
||||
```
|
||||
|
||||
The planner agent utilizes a special prompting strategy to create long term plans for solving problems.
|
||||
The agent is given its previous action-observation pairs, current task, and hint based on last action taken at every step.
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(llm: LLM)
|
||||
```
|
||||
|
||||
Initialize the Planner Agent with an LLM
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- llm (LLM): The llm to be used by this agent
|
||||
|
||||
#### step
|
||||
|
||||
```python
|
||||
def step(state: State) -> Action
|
||||
```
|
||||
|
||||
Checks to see if current step is completed, returns AgentFinishAction if True.
|
||||
Otherwise, creates a plan prompt and sends to model for inference, returning the result as the next action.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- state (State): The current state given the previous actions and observations
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- AgentFinishAction: If the last state was 'completed', 'verified', or 'abandoned'
|
||||
- Action: The next action to take based on llm response
|
||||
|
||||
@@ -1,49 +0,0 @@
|
||||
---
|
||||
sidebar_label: prompt
|
||||
title: agenthub.planner_agent.prompt
|
||||
---
|
||||
|
||||
#### get\_hint
|
||||
|
||||
```python
|
||||
def get_hint(latest_action_id: str) -> str
|
||||
```
|
||||
|
||||
Returns action type hint based on given action_id
|
||||
|
||||
#### get\_prompt
|
||||
|
||||
```python
|
||||
def get_prompt(plan: Plan, history: List[Tuple[Action, Observation]]) -> str
|
||||
```
|
||||
|
||||
Gets the prompt for the planner agent.
|
||||
Formatted with the most recent action-observation pairs, current task, and hint based on last action
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- plan (Plan): The original plan outlined by the user with LLM defined tasks
|
||||
- history (List[Tuple[Action, Observation]]): List of corresponding action-observation pairs
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- str: The formatted string prompt with historical values
|
||||
|
||||
#### parse\_response
|
||||
|
||||
```python
|
||||
def parse_response(response: str) -> Action
|
||||
```
|
||||
|
||||
Parses the model output to find a valid action to take
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- response (str): A response from the model that potentially contains an Action.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- Action: A valid next action to perform from model output
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
sidebar_label: action
|
||||
title: opendevin.action
|
||||
---
|
||||
|
||||
#### ACTION\_TYPE\_TO\_CLASS
|
||||
|
||||
type: ignore[attr-defined]
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: base
|
||||
title: opendevin.action.base
|
||||
---
|
||||
|
||||
## NullAction Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class NullAction(NotExecutableAction)
|
||||
```
|
||||
|
||||
An action that does nothing.
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
---
|
||||
sidebar_label: fileop
|
||||
title: opendevin.action.fileop
|
||||
---
|
||||
|
||||
## FileReadAction Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class FileReadAction(ExecutableAction)
|
||||
```
|
||||
|
||||
Reads a file from a given path.
|
||||
Can be set to read specific lines using start and end
|
||||
Default lines 0:-1 (whole file)
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
---
|
||||
sidebar_label: github
|
||||
title: opendevin.action.github
|
||||
---
|
||||
|
||||
## GitHubPushAction Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class GitHubPushAction(ExecutableAction)
|
||||
```
|
||||
|
||||
This pushes the current branch to github.
|
||||
|
||||
To use this, you need to set the GITHUB_TOKEN environment variable.
|
||||
The agent will return a message with a URL that you can click to make a pull
|
||||
request.
|
||||
|
||||
**Attributes**:
|
||||
|
||||
- `owner` - The owner of the source repo
|
||||
- `repo` - The name of the source repo
|
||||
- `branch` - The branch to push
|
||||
- `action` - The action identifier
|
||||
|
||||
## GitHubSendPRAction Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class GitHubSendPRAction(ExecutableAction)
|
||||
```
|
||||
|
||||
An action to send a github PR.
|
||||
|
||||
To use this, you need to set the GITHUB_TOKEN environment variable.
|
||||
|
||||
**Attributes**:
|
||||
|
||||
- `owner` - The owner of the source repo
|
||||
- `repo` - The name of the source repo
|
||||
- `title` - The title of the PR
|
||||
- `head` - The branch to send the PR from
|
||||
- `head_repo` - The repo to send the PR from
|
||||
- `base` - The branch to send the PR to
|
||||
- `body` - The body of the PR
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: tasks
|
||||
title: opendevin.action.tasks
|
||||
---
|
||||
|
||||
## TaskStateChangedAction Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class TaskStateChangedAction(NotExecutableAction)
|
||||
```
|
||||
|
||||
Fake action, just to notify the client that a task state has changed.
|
||||
|
||||
@@ -1,121 +0,0 @@
|
||||
---
|
||||
sidebar_label: agent
|
||||
title: opendevin.agent
|
||||
---
|
||||
|
||||
## Agent Objects
|
||||
|
||||
```python
|
||||
class Agent(ABC)
|
||||
```
|
||||
|
||||
This abstract base class is an general interface for an agent dedicated to
|
||||
executing a specific instruction and allowing human interaction with the
|
||||
agent during execution.
|
||||
It tracks the execution status and maintains a history of interactions.
|
||||
|
||||
#### complete
|
||||
|
||||
```python
|
||||
@property
|
||||
def complete() -> bool
|
||||
```
|
||||
|
||||
Indicates whether the current instruction execution is complete.
|
||||
|
||||
**Returns**:
|
||||
|
||||
- complete (bool): True if execution is complete; False otherwise.
|
||||
|
||||
#### step
|
||||
|
||||
```python
|
||||
@abstractmethod
|
||||
def step(state: 'State') -> 'Action'
|
||||
```
|
||||
|
||||
Starts the execution of the assigned instruction. This method should
|
||||
be implemented by subclasses to define the specific execution logic.
|
||||
|
||||
#### search\_memory
|
||||
|
||||
```python
|
||||
@abstractmethod
|
||||
def search_memory(query: str) -> List[str]
|
||||
```
|
||||
|
||||
Searches the agent's memory for information relevant to the given query.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- query (str): The query to search for in the agent's memory.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- response (str): The response to the query.
|
||||
|
||||
#### reset
|
||||
|
||||
```python
|
||||
def reset() -> None
|
||||
```
|
||||
|
||||
Resets the agent's execution status and clears the history. This method can be used
|
||||
to prepare the agent for restarting the instruction or cleaning up before destruction.
|
||||
|
||||
#### register
|
||||
|
||||
```python
|
||||
@classmethod
|
||||
def register(cls, name: str, agent_cls: Type['Agent'])
|
||||
```
|
||||
|
||||
Registers an agent class in the registry.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- name (str): The name to register the class under.
|
||||
- agent_cls (Type['Agent']): The class to register.
|
||||
|
||||
|
||||
**Raises**:
|
||||
|
||||
- AgentAlreadyRegisteredError: If name already registered
|
||||
|
||||
#### get\_cls
|
||||
|
||||
```python
|
||||
@classmethod
|
||||
def get_cls(cls, name: str) -> Type['Agent']
|
||||
```
|
||||
|
||||
Retrieves an agent class from the registry.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- name (str): The name of the class to retrieve
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- agent_cls (Type['Agent']): The class registered under the specified name.
|
||||
|
||||
|
||||
**Raises**:
|
||||
|
||||
- AgentNotRegisteredError: If name not registered
|
||||
|
||||
#### list\_agents
|
||||
|
||||
```python
|
||||
@classmethod
|
||||
def list_agents(cls) -> list[str]
|
||||
```
|
||||
|
||||
Retrieves the list of all agent names from the registry.
|
||||
|
||||
**Raises**:
|
||||
|
||||
- AgentNotRegisteredError: If no agent is registered
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
---
|
||||
sidebar_label: browser_env
|
||||
title: opendevin.browser.browser_env
|
||||
---
|
||||
|
||||
## BrowserEnv Objects
|
||||
|
||||
```python
|
||||
class BrowserEnv()
|
||||
```
|
||||
|
||||
#### image\_to\_png\_base64\_url
|
||||
|
||||
```python
|
||||
@staticmethod
|
||||
def image_to_png_base64_url(image: np.ndarray | Image.Image)
|
||||
```
|
||||
|
||||
Convert a numpy array to a base64 encoded png image url.
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
---
|
||||
sidebar_label: config
|
||||
title: opendevin.config
|
||||
---
|
||||
|
||||
#### get
|
||||
|
||||
```python
|
||||
def get(key: ConfigType, required: bool = False)
|
||||
```
|
||||
|
||||
Get a key from the environment variables or config.toml or default configs.
|
||||
|
||||
@@ -1,121 +0,0 @@
|
||||
---
|
||||
sidebar_label: agent
|
||||
title: opendevin.controller.agent
|
||||
---
|
||||
|
||||
## Agent Objects
|
||||
|
||||
```python
|
||||
class Agent(ABC)
|
||||
```
|
||||
|
||||
This abstract base class is an general interface for an agent dedicated to
|
||||
executing a specific instruction and allowing human interaction with the
|
||||
agent during execution.
|
||||
It tracks the execution status and maintains a history of interactions.
|
||||
|
||||
#### complete
|
||||
|
||||
```python
|
||||
@property
|
||||
def complete() -> bool
|
||||
```
|
||||
|
||||
Indicates whether the current instruction execution is complete.
|
||||
|
||||
**Returns**:
|
||||
|
||||
- complete (bool): True if execution is complete; False otherwise.
|
||||
|
||||
#### step
|
||||
|
||||
```python
|
||||
@abstractmethod
|
||||
def step(state: 'State') -> 'Action'
|
||||
```
|
||||
|
||||
Starts the execution of the assigned instruction. This method should
|
||||
be implemented by subclasses to define the specific execution logic.
|
||||
|
||||
#### search\_memory
|
||||
|
||||
```python
|
||||
@abstractmethod
|
||||
def search_memory(query: str) -> List[str]
|
||||
```
|
||||
|
||||
Searches the agent's memory for information relevant to the given query.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- query (str): The query to search for in the agent's memory.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- response (str): The response to the query.
|
||||
|
||||
#### reset
|
||||
|
||||
```python
|
||||
def reset() -> None
|
||||
```
|
||||
|
||||
Resets the agent's execution status and clears the history. This method can be used
|
||||
to prepare the agent for restarting the instruction or cleaning up before destruction.
|
||||
|
||||
#### register
|
||||
|
||||
```python
|
||||
@classmethod
|
||||
def register(cls, name: str, agent_cls: Type['Agent'])
|
||||
```
|
||||
|
||||
Registers an agent class in the registry.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- name (str): The name to register the class under.
|
||||
- agent_cls (Type['Agent']): The class to register.
|
||||
|
||||
|
||||
**Raises**:
|
||||
|
||||
- AgentAlreadyRegisteredError: If name already registered
|
||||
|
||||
#### get\_cls
|
||||
|
||||
```python
|
||||
@classmethod
|
||||
def get_cls(cls, name: str) -> Type['Agent']
|
||||
```
|
||||
|
||||
Retrieves an agent class from the registry.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- name (str): The name of the class to retrieve
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- agent_cls (Type['Agent']): The class registered under the specified name.
|
||||
|
||||
|
||||
**Raises**:
|
||||
|
||||
- AgentNotRegisteredError: If name not registered
|
||||
|
||||
#### list\_agents
|
||||
|
||||
```python
|
||||
@classmethod
|
||||
def list_agents(cls) -> list[str]
|
||||
```
|
||||
|
||||
Retrieves the list of all agent names from the registry.
|
||||
|
||||
**Raises**:
|
||||
|
||||
- AgentNotRegisteredError: If no agent is registered
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
---
|
||||
sidebar_label: agent_controller
|
||||
title: opendevin.controller.agent_controller
|
||||
---
|
||||
|
||||
## AgentController Objects
|
||||
|
||||
```python
|
||||
class AgentController()
|
||||
```
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(agent: Agent,
|
||||
sid: str = 'default',
|
||||
max_iterations: int = MAX_ITERATIONS,
|
||||
max_chars: int = MAX_CHARS,
|
||||
callbacks: List[Callable] = [])
|
||||
```
|
||||
|
||||
Initializes a new instance of the AgentController class.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `agent` - The agent instance to control.
|
||||
- `sid` - The session ID of the agent.
|
||||
- `max_iterations` - The maximum number of iterations the agent can run.
|
||||
- `max_chars` - The maximum number of characters the agent can output.
|
||||
- `callbacks` - A list of callback functions to run after each action.
|
||||
|
||||
#### setup\_task
|
||||
|
||||
```python
|
||||
async def setup_task(task: str, inputs: dict = {})
|
||||
```
|
||||
|
||||
Sets up the agent controller with a task.
|
||||
|
||||
#### start
|
||||
|
||||
```python
|
||||
async def start(task: str)
|
||||
```
|
||||
|
||||
Starts the agent controller with a task.
|
||||
If task already run before, it will continue from the last step.
|
||||
|
||||
#### get\_task\_state
|
||||
|
||||
```python
|
||||
def get_task_state()
|
||||
```
|
||||
|
||||
Returns the current state of the agent task.
|
||||
|
||||
@@ -1,182 +0,0 @@
|
||||
---
|
||||
sidebar_label: plan
|
||||
title: opendevin.controller.state.plan
|
||||
---
|
||||
|
||||
## Task Objects
|
||||
|
||||
```python
|
||||
class Task()
|
||||
```
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(parent: 'Task | None',
|
||||
goal: str,
|
||||
state: str = OPEN_STATE,
|
||||
subtasks: List = [])
|
||||
```
|
||||
|
||||
Initializes a new instance of the Task class.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `parent` - The parent task, or None if it is the root task.
|
||||
- `goal` - The goal of the task.
|
||||
- `state` - The initial state of the task.
|
||||
- `subtasks` - A list of subtasks associated with this task.
|
||||
|
||||
#### to\_string
|
||||
|
||||
```python
|
||||
def to_string(indent='')
|
||||
```
|
||||
|
||||
Returns a string representation of the task and its subtasks.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `indent` - The indentation string for formatting the output.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
A string representation of the task and its subtasks.
|
||||
|
||||
#### to\_dict
|
||||
|
||||
```python
|
||||
def to_dict()
|
||||
```
|
||||
|
||||
Returns a dictionary representation of the task.
|
||||
|
||||
**Returns**:
|
||||
|
||||
A dictionary containing the task's attributes.
|
||||
|
||||
#### set\_state
|
||||
|
||||
```python
|
||||
def set_state(state)
|
||||
```
|
||||
|
||||
Sets the state of the task and its subtasks.
|
||||
|
||||
Args: state: The new state of the task.
|
||||
|
||||
**Raises**:
|
||||
|
||||
- `PlanInvalidStateError` - If the provided state is invalid.
|
||||
|
||||
#### get\_current\_task
|
||||
|
||||
```python
|
||||
def get_current_task() -> 'Task | None'
|
||||
```
|
||||
|
||||
Retrieves the current task in progress.
|
||||
|
||||
**Returns**:
|
||||
|
||||
The current task in progress, or None if no task is in progress.
|
||||
|
||||
## Plan Objects
|
||||
|
||||
```python
|
||||
class Plan()
|
||||
```
|
||||
|
||||
Represents a plan consisting of tasks.
|
||||
|
||||
**Attributes**:
|
||||
|
||||
- `main_goal` - The main goal of the plan.
|
||||
- `task` - The root task of the plan.
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(task: str)
|
||||
```
|
||||
|
||||
Initializes a new instance of the Plan class.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `task` - The main goal of the plan.
|
||||
|
||||
#### \_\_str\_\_
|
||||
|
||||
```python
|
||||
def __str__()
|
||||
```
|
||||
|
||||
Returns a string representation of the plan.
|
||||
|
||||
**Returns**:
|
||||
|
||||
A string representation of the plan.
|
||||
|
||||
#### get\_task\_by\_id
|
||||
|
||||
```python
|
||||
def get_task_by_id(id: str) -> Task
|
||||
```
|
||||
|
||||
Retrieves a task by its ID.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `id` - The ID of the task.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
The task with the specified ID.
|
||||
|
||||
|
||||
**Raises**:
|
||||
|
||||
- `ValueError` - If the provided task ID is invalid or does not exist.
|
||||
|
||||
#### add\_subtask
|
||||
|
||||
```python
|
||||
def add_subtask(parent_id: str, goal: str, subtasks: List = [])
|
||||
```
|
||||
|
||||
Adds a subtask to a parent task.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `parent_id` - The ID of the parent task.
|
||||
- `goal` - The goal of the subtask.
|
||||
- `subtasks` - A list of subtasks associated with the new subtask.
|
||||
|
||||
#### set\_subtask\_state
|
||||
|
||||
```python
|
||||
def set_subtask_state(id: str, state: str)
|
||||
```
|
||||
|
||||
Sets the state of a subtask.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `id` - The ID of the subtask.
|
||||
- `state` - The new state of the subtask.
|
||||
|
||||
#### get\_current\_task
|
||||
|
||||
```python
|
||||
def get_current_task()
|
||||
```
|
||||
|
||||
Retrieves the current task in progress.
|
||||
|
||||
**Returns**:
|
||||
|
||||
The current task in progress, or None if no task is in progress.
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
---
|
||||
sidebar_label: config
|
||||
title: opendevin.core.config
|
||||
---
|
||||
|
||||
#### get
|
||||
|
||||
```python
|
||||
def get(key: ConfigType, required: bool = False)
|
||||
```
|
||||
|
||||
Get a key from the environment variables or config.toml or default configs.
|
||||
|
||||
@@ -1,92 +0,0 @@
|
||||
---
|
||||
sidebar_label: logger
|
||||
title: opendevin.core.logger
|
||||
---
|
||||
|
||||
#### get\_console\_handler
|
||||
|
||||
```python
|
||||
def get_console_handler()
|
||||
```
|
||||
|
||||
Returns a console handler for logging.
|
||||
|
||||
#### get\_file\_handler
|
||||
|
||||
```python
|
||||
def get_file_handler()
|
||||
```
|
||||
|
||||
Returns a file handler for logging.
|
||||
|
||||
#### log\_uncaught\_exceptions
|
||||
|
||||
```python
|
||||
def log_uncaught_exceptions(ex_cls, ex, tb)
|
||||
```
|
||||
|
||||
Logs uncaught exceptions along with the traceback.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `ex_cls` _type_ - The type of the exception.
|
||||
- `ex` _Exception_ - The exception instance.
|
||||
- `tb` _traceback_ - The traceback object.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
None
|
||||
|
||||
## LlmFileHandler Objects
|
||||
|
||||
```python
|
||||
class LlmFileHandler(logging.FileHandler)
|
||||
```
|
||||
|
||||
__LLM prompt and response logging__
|
||||
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(filename, mode='a', encoding='utf-8', delay=False)
|
||||
```
|
||||
|
||||
Initializes an instance of LlmFileHandler.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `filename` _str_ - The name of the log file.
|
||||
- `mode` _str, optional_ - The file mode. Defaults to 'a'.
|
||||
- `encoding` _str, optional_ - The file encoding. Defaults to None.
|
||||
- `delay` _bool, optional_ - Whether to delay file opening. Defaults to False.
|
||||
|
||||
#### emit
|
||||
|
||||
```python
|
||||
def emit(record)
|
||||
```
|
||||
|
||||
Emits a log record.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `record` _logging.LogRecord_ - The log record to emit.
|
||||
|
||||
#### get\_llm\_prompt\_file\_handler
|
||||
|
||||
```python
|
||||
def get_llm_prompt_file_handler()
|
||||
```
|
||||
|
||||
Returns a file handler for LLM prompt logging.
|
||||
|
||||
#### get\_llm\_response\_file\_handler
|
||||
|
||||
```python
|
||||
def get_llm_response_file_handler()
|
||||
```
|
||||
|
||||
Returns a file handler for LLM response logging.
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
---
|
||||
sidebar_label: main
|
||||
title: opendevin.core.main
|
||||
---
|
||||
|
||||
#### read\_task\_from\_file
|
||||
|
||||
```python
|
||||
def read_task_from_file(file_path: str) -> str
|
||||
```
|
||||
|
||||
Read task from the specified file.
|
||||
|
||||
#### read\_task\_from\_stdin
|
||||
|
||||
```python
|
||||
def read_task_from_stdin() -> str
|
||||
```
|
||||
|
||||
Read task from stdin.
|
||||
|
||||
#### main
|
||||
|
||||
```python
|
||||
async def main(task_str: str = '')
|
||||
```
|
||||
|
||||
Main coroutine to run the agent controller with task input flexibility.
|
||||
|
||||
@@ -1,88 +0,0 @@
|
||||
---
|
||||
sidebar_label: action
|
||||
title: opendevin.core.schema.action
|
||||
---
|
||||
|
||||
## ActionTypeSchema Objects
|
||||
|
||||
```python
|
||||
class ActionTypeSchema(BaseModel)
|
||||
```
|
||||
|
||||
#### INIT
|
||||
|
||||
Initializes the agent. Only sent by client.
|
||||
|
||||
#### USER\_MESSAGE
|
||||
|
||||
Sends a message from the user. Only sent by the client.
|
||||
|
||||
#### START
|
||||
|
||||
Starts a new development task OR send chat from the user. Only sent by the client.
|
||||
|
||||
#### READ
|
||||
|
||||
Reads the content of a file.
|
||||
|
||||
#### WRITE
|
||||
|
||||
Writes the content to a file.
|
||||
|
||||
#### RUN
|
||||
|
||||
Runs a command.
|
||||
|
||||
#### RUN\_IPYTHON
|
||||
|
||||
Runs a IPython cell.
|
||||
|
||||
#### KILL
|
||||
|
||||
Kills a background command.
|
||||
|
||||
#### BROWSE
|
||||
|
||||
Opens a web page.
|
||||
|
||||
#### RECALL
|
||||
|
||||
Searches long-term memory
|
||||
|
||||
#### THINK
|
||||
|
||||
Allows the agent to make a plan, set a goal, or record thoughts
|
||||
|
||||
#### TALK
|
||||
|
||||
Allows the agent to respond to the user.
|
||||
|
||||
#### DELEGATE
|
||||
|
||||
Delegates a task to another agent.
|
||||
|
||||
#### FINISH
|
||||
|
||||
If you're absolutely certain that you've completed your task and have tested your work,
|
||||
use the finish action to stop working.
|
||||
|
||||
#### PAUSE
|
||||
|
||||
Pauses the task.
|
||||
|
||||
#### RESUME
|
||||
|
||||
Resumes the task.
|
||||
|
||||
#### STOP
|
||||
|
||||
Stops the task. Must send a start action to restart a new task.
|
||||
|
||||
#### PUSH
|
||||
|
||||
Push a branch to github.
|
||||
|
||||
#### SEND\_PR
|
||||
|
||||
Send a PR to github.
|
||||
|
||||
@@ -1,39 +0,0 @@
|
||||
---
|
||||
sidebar_label: observation
|
||||
title: opendevin.core.schema.observation
|
||||
---
|
||||
|
||||
## ObservationTypeSchema Objects
|
||||
|
||||
```python
|
||||
class ObservationTypeSchema(BaseModel)
|
||||
```
|
||||
|
||||
#### READ
|
||||
|
||||
The content of a file
|
||||
|
||||
#### BROWSE
|
||||
|
||||
The HTML content of a URL
|
||||
|
||||
#### RUN
|
||||
|
||||
The output of a command
|
||||
|
||||
#### RUN\_IPYTHON
|
||||
|
||||
Runs a IPython cell.
|
||||
|
||||
#### RECALL
|
||||
|
||||
The result of a search
|
||||
|
||||
#### CHAT
|
||||
|
||||
A message from the user
|
||||
|
||||
#### DELEGATE
|
||||
|
||||
The result of a task delegated to another agent
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
---
|
||||
sidebar_label: task
|
||||
title: opendevin.core.schema.task
|
||||
---
|
||||
|
||||
## TaskState Objects
|
||||
|
||||
```python
|
||||
class TaskState(str, Enum)
|
||||
```
|
||||
|
||||
#### INIT
|
||||
|
||||
Initial state of the task.
|
||||
|
||||
#### RUNNING
|
||||
|
||||
The task is running.
|
||||
|
||||
#### AWAITING\_USER\_INPUT
|
||||
|
||||
The task is awaiting user input.
|
||||
|
||||
#### PAUSED
|
||||
|
||||
The task is paused.
|
||||
|
||||
#### STOPPED
|
||||
|
||||
The task is stopped.
|
||||
|
||||
#### FINISHED
|
||||
|
||||
The task is finished.
|
||||
|
||||
#### ERROR
|
||||
|
||||
An error occurred during the task.
|
||||
|
||||
## TaskStateAction Objects
|
||||
|
||||
```python
|
||||
class TaskStateAction(str, Enum)
|
||||
```
|
||||
|
||||
#### START
|
||||
|
||||
Starts the task.
|
||||
|
||||
#### PAUSE
|
||||
|
||||
Pauses the task.
|
||||
|
||||
#### RESUME
|
||||
|
||||
Resumes the task.
|
||||
|
||||
#### STOP
|
||||
|
||||
Stops the task.
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
sidebar_label: action
|
||||
title: opendevin.events.action
|
||||
---
|
||||
|
||||
#### ACTION\_TYPE\_TO\_CLASS
|
||||
|
||||
type: ignore[attr-defined]
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: empty
|
||||
title: opendevin.events.action.empty
|
||||
---
|
||||
|
||||
## NullAction Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class NullAction(Action)
|
||||
```
|
||||
|
||||
An action that does nothing.
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
---
|
||||
sidebar_label: files
|
||||
title: opendevin.events.action.files
|
||||
---
|
||||
|
||||
## FileReadAction Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class FileReadAction(Action)
|
||||
```
|
||||
|
||||
Reads a file from a given path.
|
||||
Can be set to read specific lines using start and end
|
||||
Default lines 0:-1 (whole file)
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
---
|
||||
sidebar_label: github
|
||||
title: opendevin.events.action.github
|
||||
---
|
||||
|
||||
## GitHubPushAction Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class GitHubPushAction(Action)
|
||||
```
|
||||
|
||||
This pushes the current branch to github.
|
||||
|
||||
To use this, you need to set the GITHUB_TOKEN environment variable.
|
||||
The agent will return a message with a URL that you can click to make a pull
|
||||
request.
|
||||
|
||||
**Attributes**:
|
||||
|
||||
- `owner` - The owner of the source repo
|
||||
- `repo` - The name of the source repo
|
||||
- `branch` - The branch to push
|
||||
- `action` - The action identifier
|
||||
|
||||
## GitHubSendPRAction Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class GitHubSendPRAction(Action)
|
||||
```
|
||||
|
||||
An action to send a github PR.
|
||||
|
||||
To use this, you need to set the GITHUB_TOKEN environment variable.
|
||||
|
||||
**Attributes**:
|
||||
|
||||
- `owner` - The owner of the source repo
|
||||
- `repo` - The name of the source repo
|
||||
- `title` - The title of the PR
|
||||
- `head` - The branch to send the PR from
|
||||
- `head_repo` - The repo to send the PR from
|
||||
- `base` - The branch to send the PR to
|
||||
- `body` - The body of the PR
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: tasks
|
||||
title: opendevin.events.action.tasks
|
||||
---
|
||||
|
||||
## TaskStateChangedAction Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class TaskStateChangedAction(Action)
|
||||
```
|
||||
|
||||
Fake action, just to notify the client that a task state has changed.
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
sidebar_label: observation
|
||||
title: opendevin.events.observation
|
||||
---
|
||||
|
||||
#### OBSERVATION\_TYPE\_TO\_CLASS
|
||||
|
||||
type: ignore[attr-defined]
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: browse
|
||||
title: opendevin.events.observation.browse
|
||||
---
|
||||
|
||||
## BrowserOutputObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class BrowserOutputObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents the output of a browser.
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
---
|
||||
sidebar_label: commands
|
||||
title: opendevin.events.observation.commands
|
||||
---
|
||||
|
||||
## CmdOutputObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class CmdOutputObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents the output of a command.
|
||||
|
||||
## IPythonRunCellObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class IPythonRunCellObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents the output of a IPythonRunCellAction.
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: delegate
|
||||
title: opendevin.events.observation.delegate
|
||||
---
|
||||
|
||||
## AgentDelegateObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class AgentDelegateObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents the result from delegating to another agent
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
---
|
||||
sidebar_label: empty
|
||||
title: opendevin.events.observation.empty
|
||||
---
|
||||
|
||||
## NullObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class NullObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents a null observation.
|
||||
This is used when the produced action is NOT executable.
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: error
|
||||
title: opendevin.events.observation.error
|
||||
---
|
||||
|
||||
## AgentErrorObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class AgentErrorObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents an error encountered by the agent.
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
---
|
||||
sidebar_label: files
|
||||
title: opendevin.events.observation.files
|
||||
---
|
||||
|
||||
## FileReadObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class FileReadObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents the content of a file.
|
||||
|
||||
## FileWriteObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class FileWriteObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents a file write operation
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
---
|
||||
sidebar_label: message
|
||||
title: opendevin.events.observation.message
|
||||
---
|
||||
|
||||
## UserMessageObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class UserMessageObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents a message sent by the user.
|
||||
|
||||
## AgentMessageObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class AgentMessageObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents a message sent by the agent.
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
---
|
||||
sidebar_label: observation
|
||||
title: opendevin.events.observation.observation
|
||||
---
|
||||
|
||||
## Observation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class Observation(Event)
|
||||
```
|
||||
|
||||
#### to\_memory
|
||||
|
||||
```python
|
||||
def to_memory() -> dict
|
||||
```
|
||||
|
||||
Converts the observation to a dictionary.
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: recall
|
||||
title: opendevin.events.observation.recall
|
||||
---
|
||||
|
||||
## AgentRecallObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class AgentRecallObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents a list of memories recalled by the agent.
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
---
|
||||
sidebar_label: files
|
||||
title: opendevin.files
|
||||
---
|
||||
|
||||
## WorkspaceFile Objects
|
||||
|
||||
```python
|
||||
class WorkspaceFile()
|
||||
```
|
||||
|
||||
#### to\_dict
|
||||
|
||||
```python
|
||||
def to_dict() -> Dict[str, Any]
|
||||
```
|
||||
|
||||
Converts the File object to a dictionary.
|
||||
|
||||
**Returns**:
|
||||
|
||||
The dictionary representation of the File object.
|
||||
|
||||
#### get\_folder\_structure
|
||||
|
||||
```python
|
||||
def get_folder_structure(workdir: Path) -> WorkspaceFile
|
||||
```
|
||||
|
||||
Gets the folder structure of a directory.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `workdir` - The directory path.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
The folder structure.
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
---
|
||||
sidebar_label: llm
|
||||
title: opendevin.llm.llm
|
||||
---
|
||||
|
||||
## LLM Objects
|
||||
|
||||
```python
|
||||
class LLM()
|
||||
```
|
||||
|
||||
The LLM class represents a Language Model instance.
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(model=DEFAULT_MODEL_NAME,
|
||||
api_key=DEFAULT_API_KEY,
|
||||
base_url=DEFAULT_BASE_URL,
|
||||
api_version=DEFAULT_API_VERSION,
|
||||
num_retries=LLM_NUM_RETRIES,
|
||||
retry_min_wait=LLM_RETRY_MIN_WAIT,
|
||||
retry_max_wait=LLM_RETRY_MAX_WAIT,
|
||||
llm_timeout=LLM_TIMEOUT,
|
||||
llm_max_return_tokens=LLM_MAX_RETURN_TOKENS)
|
||||
```
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `model` _str, optional_ - The name of the language model. Defaults to LLM_MODEL.
|
||||
- `api_key` _str, optional_ - The API key for accessing the language model. Defaults to LLM_API_KEY.
|
||||
- `base_url` _str, optional_ - The base URL for the language model API. Defaults to LLM_BASE_URL. Not necessary for OpenAI.
|
||||
- `api_version` _str, optional_ - The version of the API to use. Defaults to LLM_API_VERSION. Not necessary for OpenAI.
|
||||
- `num_retries` _int, optional_ - The number of retries for API calls. Defaults to LLM_NUM_RETRIES.
|
||||
- `retry_min_wait` _int, optional_ - The minimum time to wait between retries in seconds. Defaults to LLM_RETRY_MIN_TIME.
|
||||
- `retry_max_wait` _int, optional_ - The maximum time to wait between retries in seconds. Defaults to LLM_RETRY_MAX_TIME.
|
||||
- `llm_timeout` _int, optional_ - The maximum time to wait for a response in seconds. Defaults to LLM_TIMEOUT.
|
||||
- `llm_max_return_tokens` _int, optional_ - The maximum number of tokens to return. Defaults to LLM_MAX_RETURN_TOKENS.
|
||||
|
||||
|
||||
**Attributes**:
|
||||
|
||||
- `model_name` _str_ - The name of the language model.
|
||||
- `api_key` _str_ - The API key for accessing the language model.
|
||||
- `base_url` _str_ - The base URL for the language model API.
|
||||
- `api_version` _str_ - The version of the API to use.
|
||||
|
||||
#### completion
|
||||
|
||||
```python
|
||||
@property
|
||||
def completion()
|
||||
```
|
||||
|
||||
Decorator for the litellm completion function.
|
||||
|
||||
@@ -1,92 +0,0 @@
|
||||
---
|
||||
sidebar_label: logger
|
||||
title: opendevin.logger
|
||||
---
|
||||
|
||||
#### get\_console\_handler
|
||||
|
||||
```python
|
||||
def get_console_handler()
|
||||
```
|
||||
|
||||
Returns a console handler for logging.
|
||||
|
||||
#### get\_file\_handler
|
||||
|
||||
```python
|
||||
def get_file_handler()
|
||||
```
|
||||
|
||||
Returns a file handler for logging.
|
||||
|
||||
#### log\_uncaught\_exceptions
|
||||
|
||||
```python
|
||||
def log_uncaught_exceptions(ex_cls, ex, tb)
|
||||
```
|
||||
|
||||
Logs uncaught exceptions along with the traceback.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `ex_cls` _type_ - The type of the exception.
|
||||
- `ex` _Exception_ - The exception instance.
|
||||
- `tb` _traceback_ - The traceback object.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
None
|
||||
|
||||
## LlmFileHandler Objects
|
||||
|
||||
```python
|
||||
class LlmFileHandler(logging.FileHandler)
|
||||
```
|
||||
|
||||
__LLM prompt and response logging__
|
||||
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(filename, mode='a', encoding='utf-8', delay=False)
|
||||
```
|
||||
|
||||
Initializes an instance of LlmFileHandler.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `filename` _str_ - The name of the log file.
|
||||
- `mode` _str, optional_ - The file mode. Defaults to 'a'.
|
||||
- `encoding` _str, optional_ - The file encoding. Defaults to None.
|
||||
- `delay` _bool, optional_ - Whether to delay file opening. Defaults to False.
|
||||
|
||||
#### emit
|
||||
|
||||
```python
|
||||
def emit(record)
|
||||
```
|
||||
|
||||
Emits a log record.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `record` _logging.LogRecord_ - The log record to emit.
|
||||
|
||||
#### get\_llm\_prompt\_file\_handler
|
||||
|
||||
```python
|
||||
def get_llm_prompt_file_handler()
|
||||
```
|
||||
|
||||
Returns a file handler for LLM prompt logging.
|
||||
|
||||
#### get\_llm\_response\_file\_handler
|
||||
|
||||
```python
|
||||
def get_llm_response_file_handler()
|
||||
```
|
||||
|
||||
Returns a file handler for LLM response logging.
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
---
|
||||
sidebar_label: main
|
||||
title: opendevin.main
|
||||
---
|
||||
|
||||
#### read\_task\_from\_file
|
||||
|
||||
```python
|
||||
def read_task_from_file(file_path: str) -> str
|
||||
```
|
||||
|
||||
Read task from the specified file.
|
||||
|
||||
#### read\_task\_from\_stdin
|
||||
|
||||
```python
|
||||
def read_task_from_stdin() -> str
|
||||
```
|
||||
|
||||
Read task from stdin.
|
||||
|
||||
#### main
|
||||
|
||||
```python
|
||||
async def main(task_str: str = '')
|
||||
```
|
||||
|
||||
Main coroutine to run the agent controller with task input flexibility.
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
---
|
||||
sidebar_label: observation
|
||||
title: opendevin.observation
|
||||
---
|
||||
|
||||
#### OBSERVATION\_TYPE\_TO\_CLASS
|
||||
|
||||
type: ignore[attr-defined]
|
||||
|
||||
@@ -1,49 +0,0 @@
|
||||
---
|
||||
sidebar_label: base
|
||||
title: opendevin.observation.base
|
||||
---
|
||||
|
||||
## Observation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class Observation()
|
||||
```
|
||||
|
||||
This data class represents an observation of the environment.
|
||||
|
||||
#### to\_dict
|
||||
|
||||
```python
|
||||
def to_dict() -> dict
|
||||
```
|
||||
|
||||
Converts the observation to a dictionary and adds user message.
|
||||
|
||||
#### to\_memory
|
||||
|
||||
```python
|
||||
def to_memory() -> dict
|
||||
```
|
||||
|
||||
Converts the observation to a dictionary.
|
||||
|
||||
#### message
|
||||
|
||||
```python
|
||||
@property
|
||||
def message() -> str
|
||||
```
|
||||
|
||||
Returns a message describing the observation.
|
||||
|
||||
## NullObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class NullObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents a null observation.
|
||||
This is used when the produced action is NOT executable.
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: browse
|
||||
title: opendevin.observation.browse
|
||||
---
|
||||
|
||||
## BrowserOutputObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class BrowserOutputObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents the output of a browser.
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
---
|
||||
sidebar_label: delegate
|
||||
title: opendevin.observation.delegate
|
||||
---
|
||||
|
||||
## AgentDelegateObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class AgentDelegateObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents a delegate observation.
|
||||
This is used when the produced action is NOT executable.
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: error
|
||||
title: opendevin.observation.error
|
||||
---
|
||||
|
||||
## AgentErrorObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class AgentErrorObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents an error encountered by the agent.
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
---
|
||||
sidebar_label: files
|
||||
title: opendevin.observation.files
|
||||
---
|
||||
|
||||
## FileReadObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class FileReadObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents the content of a file.
|
||||
|
||||
## FileWriteObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class FileWriteObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents a file write operation
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
---
|
||||
sidebar_label: message
|
||||
title: opendevin.observation.message
|
||||
---
|
||||
|
||||
## UserMessageObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class UserMessageObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents a message sent by the user.
|
||||
|
||||
## AgentMessageObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class AgentMessageObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents a message sent by the agent.
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: recall
|
||||
title: opendevin.observation.recall
|
||||
---
|
||||
|
||||
## AgentRecallObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class AgentRecallObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents a list of memories recalled by the agent.
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
---
|
||||
sidebar_label: run
|
||||
title: opendevin.observation.run
|
||||
---
|
||||
|
||||
## CmdOutputObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class CmdOutputObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents the output of a command.
|
||||
|
||||
## IPythonRunCellObservation Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class IPythonRunCellObservation(Observation)
|
||||
```
|
||||
|
||||
This data class represents the output of a IPythonRunCellAction.
|
||||
|
||||
@@ -1,182 +0,0 @@
|
||||
---
|
||||
sidebar_label: plan
|
||||
title: opendevin.plan
|
||||
---
|
||||
|
||||
## Task Objects
|
||||
|
||||
```python
|
||||
class Task()
|
||||
```
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(parent: 'Task | None',
|
||||
goal: str,
|
||||
state: str = OPEN_STATE,
|
||||
subtasks: List = [])
|
||||
```
|
||||
|
||||
Initializes a new instance of the Task class.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `parent` - The parent task, or None if it is the root task.
|
||||
- `goal` - The goal of the task.
|
||||
- `state` - The initial state of the task.
|
||||
- `subtasks` - A list of subtasks associated with this task.
|
||||
|
||||
#### to\_string
|
||||
|
||||
```python
|
||||
def to_string(indent='')
|
||||
```
|
||||
|
||||
Returns a string representation of the task and its subtasks.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `indent` - The indentation string for formatting the output.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
A string representation of the task and its subtasks.
|
||||
|
||||
#### to\_dict
|
||||
|
||||
```python
|
||||
def to_dict()
|
||||
```
|
||||
|
||||
Returns a dictionary representation of the task.
|
||||
|
||||
**Returns**:
|
||||
|
||||
A dictionary containing the task's attributes.
|
||||
|
||||
#### set\_state
|
||||
|
||||
```python
|
||||
def set_state(state)
|
||||
```
|
||||
|
||||
Sets the state of the task and its subtasks.
|
||||
|
||||
Args: state: The new state of the task.
|
||||
|
||||
**Raises**:
|
||||
|
||||
- `PlanInvalidStateError` - If the provided state is invalid.
|
||||
|
||||
#### get\_current\_task
|
||||
|
||||
```python
|
||||
def get_current_task() -> 'Task | None'
|
||||
```
|
||||
|
||||
Retrieves the current task in progress.
|
||||
|
||||
**Returns**:
|
||||
|
||||
The current task in progress, or None if no task is in progress.
|
||||
|
||||
## Plan Objects
|
||||
|
||||
```python
|
||||
class Plan()
|
||||
```
|
||||
|
||||
Represents a plan consisting of tasks.
|
||||
|
||||
**Attributes**:
|
||||
|
||||
- `main_goal` - The main goal of the plan.
|
||||
- `task` - The root task of the plan.
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(task: str)
|
||||
```
|
||||
|
||||
Initializes a new instance of the Plan class.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `task` - The main goal of the plan.
|
||||
|
||||
#### \_\_str\_\_
|
||||
|
||||
```python
|
||||
def __str__()
|
||||
```
|
||||
|
||||
Returns a string representation of the plan.
|
||||
|
||||
**Returns**:
|
||||
|
||||
A string representation of the plan.
|
||||
|
||||
#### get\_task\_by\_id
|
||||
|
||||
```python
|
||||
def get_task_by_id(id: str) -> Task
|
||||
```
|
||||
|
||||
Retrieves a task by its ID.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `id` - The ID of the task.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
The task with the specified ID.
|
||||
|
||||
|
||||
**Raises**:
|
||||
|
||||
- `ValueError` - If the provided task ID is invalid or does not exist.
|
||||
|
||||
#### add\_subtask
|
||||
|
||||
```python
|
||||
def add_subtask(parent_id: str, goal: str, subtasks: List = [])
|
||||
```
|
||||
|
||||
Adds a subtask to a parent task.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `parent_id` - The ID of the parent task.
|
||||
- `goal` - The goal of the subtask.
|
||||
- `subtasks` - A list of subtasks associated with the new subtask.
|
||||
|
||||
#### set\_subtask\_state
|
||||
|
||||
```python
|
||||
def set_subtask_state(id: str, state: str)
|
||||
```
|
||||
|
||||
Sets the state of a subtask.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `id` - The ID of the subtask.
|
||||
- `state` - The new state of the subtask.
|
||||
|
||||
#### get\_current\_task
|
||||
|
||||
```python
|
||||
def get_current_task()
|
||||
```
|
||||
|
||||
Retrieves the current task in progress.
|
||||
|
||||
**Returns**:
|
||||
|
||||
The current task in progress, or None if no task is in progress.
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
---
|
||||
sidebar_label: browser_env
|
||||
title: opendevin.runtime.browser.browser_env
|
||||
---
|
||||
|
||||
## BrowserEnv Objects
|
||||
|
||||
```python
|
||||
class BrowserEnv()
|
||||
```
|
||||
|
||||
#### image\_to\_png\_base64\_url
|
||||
|
||||
```python
|
||||
@staticmethod
|
||||
def image_to_png_base64_url(image: np.ndarray | Image.Image)
|
||||
```
|
||||
|
||||
Convert a numpy array to a base64 encoded png image url.
|
||||
|
||||
Binary file not shown.
@@ -1,19 +0,0 @@
|
||||
---
|
||||
sidebar_label: sandbox
|
||||
title: opendevin.runtime.e2b.sandbox
|
||||
---
|
||||
|
||||
## E2BBox Objects
|
||||
|
||||
```python
|
||||
class E2BBox(Sandbox)
|
||||
```
|
||||
|
||||
#### copy\_to
|
||||
|
||||
```python
|
||||
def copy_to(host_src: str, sandbox_dest: str, recursive: bool = False)
|
||||
```
|
||||
|
||||
Copies a local file or directory to the sandbox.
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
---
|
||||
sidebar_label: files
|
||||
title: opendevin.runtime.files
|
||||
---
|
||||
|
||||
## WorkspaceFile Objects
|
||||
|
||||
```python
|
||||
class WorkspaceFile()
|
||||
```
|
||||
|
||||
#### to\_dict
|
||||
|
||||
```python
|
||||
def to_dict() -> Dict[str, Any]
|
||||
```
|
||||
|
||||
Converts the File object to a dictionary.
|
||||
|
||||
**Returns**:
|
||||
|
||||
The dictionary representation of the File object.
|
||||
|
||||
#### get\_folder\_structure
|
||||
|
||||
```python
|
||||
def get_folder_structure(workdir: Path) -> WorkspaceFile
|
||||
```
|
||||
|
||||
Gets the folder structure of a directory.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `workdir` - The directory path.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
The folder structure.
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
---
|
||||
sidebar_label: jupyter
|
||||
title: opendevin.runtime.plugins.jupyter
|
||||
---
|
||||
|
||||
## JupyterRequirement Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class JupyterRequirement(PluginRequirement)
|
||||
```
|
||||
|
||||
#### host\_src
|
||||
|
||||
The directory of this file (sandbox/plugins/jupyter)
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
---
|
||||
sidebar_label: mixin
|
||||
title: opendevin.runtime.plugins.mixin
|
||||
---
|
||||
|
||||
## PluginMixin Objects
|
||||
|
||||
```python
|
||||
class PluginMixin()
|
||||
```
|
||||
|
||||
Mixin for Sandbox to support plugins.
|
||||
|
||||
#### init\_plugins
|
||||
|
||||
```python
|
||||
def init_plugins(requirements: List[PluginRequirement])
|
||||
```
|
||||
|
||||
Load a plugin into the sandbox.
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: requirement
|
||||
title: opendevin.runtime.plugins.requirement
|
||||
---
|
||||
|
||||
## PluginRequirement Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class PluginRequirement()
|
||||
```
|
||||
|
||||
Requirement for a plugin.
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
---
|
||||
sidebar_label: system
|
||||
title: opendevin.runtime.utils.system
|
||||
---
|
||||
|
||||
#### find\_available\_tcp\_port
|
||||
|
||||
```python
|
||||
def find_available_tcp_port() -> int
|
||||
```
|
||||
|
||||
Find an available TCP port, return -1 if none available.
|
||||
|
||||
Binary file not shown.
@@ -1,19 +0,0 @@
|
||||
---
|
||||
sidebar_label: sandbox
|
||||
title: opendevin.sandbox.e2b.sandbox
|
||||
---
|
||||
|
||||
## E2BBox Objects
|
||||
|
||||
```python
|
||||
class E2BBox(Sandbox)
|
||||
```
|
||||
|
||||
#### copy\_to
|
||||
|
||||
```python
|
||||
def copy_to(host_src: str, sandbox_dest: str, recursive: bool = False)
|
||||
```
|
||||
|
||||
Copies a local file or directory to the sandbox.
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
---
|
||||
sidebar_label: jupyter
|
||||
title: opendevin.sandbox.plugins.jupyter
|
||||
---
|
||||
|
||||
## JupyterRequirement Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class JupyterRequirement(PluginRequirement)
|
||||
```
|
||||
|
||||
#### host\_src
|
||||
|
||||
The directory of this file (sandbox/plugins/jupyter)
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
---
|
||||
sidebar_label: mixin
|
||||
title: opendevin.sandbox.plugins.mixin
|
||||
---
|
||||
|
||||
## PluginMixin Objects
|
||||
|
||||
```python
|
||||
class PluginMixin()
|
||||
```
|
||||
|
||||
Mixin for Sandbox to support plugins.
|
||||
|
||||
#### init\_plugins
|
||||
|
||||
```python
|
||||
def init_plugins(requirements: List[PluginRequirement])
|
||||
```
|
||||
|
||||
Load a plugin into the sandbox.
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
sidebar_label: requirement
|
||||
title: opendevin.sandbox.plugins.requirement
|
||||
---
|
||||
|
||||
## PluginRequirement Objects
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class PluginRequirement()
|
||||
```
|
||||
|
||||
Requirement for a plugin.
|
||||
|
||||
@@ -1,88 +0,0 @@
|
||||
---
|
||||
sidebar_label: action
|
||||
title: opendevin.schema.action
|
||||
---
|
||||
|
||||
## ActionTypeSchema Objects
|
||||
|
||||
```python
|
||||
class ActionTypeSchema(BaseModel)
|
||||
```
|
||||
|
||||
#### INIT
|
||||
|
||||
Initializes the agent. Only sent by client.
|
||||
|
||||
#### USER\_MESSAGE
|
||||
|
||||
Sends a message from the user. Only sent by the client.
|
||||
|
||||
#### START
|
||||
|
||||
Starts a new development task OR send chat from the user. Only sent by the client.
|
||||
|
||||
#### READ
|
||||
|
||||
Reads the content of a file.
|
||||
|
||||
#### WRITE
|
||||
|
||||
Writes the content to a file.
|
||||
|
||||
#### RUN
|
||||
|
||||
Runs a command.
|
||||
|
||||
#### RUN\_IPYTHON
|
||||
|
||||
Runs a IPython cell.
|
||||
|
||||
#### KILL
|
||||
|
||||
Kills a background command.
|
||||
|
||||
#### BROWSE
|
||||
|
||||
Opens a web page.
|
||||
|
||||
#### RECALL
|
||||
|
||||
Searches long-term memory
|
||||
|
||||
#### THINK
|
||||
|
||||
Allows the agent to make a plan, set a goal, or record thoughts
|
||||
|
||||
#### TALK
|
||||
|
||||
Allows the agent to respond to the user.
|
||||
|
||||
#### DELEGATE
|
||||
|
||||
Delegates a task to another agent.
|
||||
|
||||
#### FINISH
|
||||
|
||||
If you're absolutely certain that you've completed your task and have tested your work,
|
||||
use the finish action to stop working.
|
||||
|
||||
#### PAUSE
|
||||
|
||||
Pauses the task.
|
||||
|
||||
#### RESUME
|
||||
|
||||
Resumes the task.
|
||||
|
||||
#### STOP
|
||||
|
||||
Stops the task. Must send a start action to restart a new task.
|
||||
|
||||
#### PUSH
|
||||
|
||||
Push a branch to github.
|
||||
|
||||
#### SEND\_PR
|
||||
|
||||
Send a PR to github.
|
||||
|
||||
@@ -1,39 +0,0 @@
|
||||
---
|
||||
sidebar_label: observation
|
||||
title: opendevin.schema.observation
|
||||
---
|
||||
|
||||
## ObservationTypeSchema Objects
|
||||
|
||||
```python
|
||||
class ObservationTypeSchema(BaseModel)
|
||||
```
|
||||
|
||||
#### READ
|
||||
|
||||
The content of a file
|
||||
|
||||
#### BROWSE
|
||||
|
||||
The HTML content of a URL
|
||||
|
||||
#### RUN
|
||||
|
||||
The output of a command
|
||||
|
||||
#### RUN\_IPYTHON
|
||||
|
||||
Runs a IPython cell.
|
||||
|
||||
#### RECALL
|
||||
|
||||
The result of a search
|
||||
|
||||
#### CHAT
|
||||
|
||||
A message from the user
|
||||
|
||||
#### DELEGATE
|
||||
|
||||
The result of a task delegated to another agent
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
---
|
||||
sidebar_label: task
|
||||
title: opendevin.schema.task
|
||||
---
|
||||
|
||||
## TaskState Objects
|
||||
|
||||
```python
|
||||
class TaskState(str, Enum)
|
||||
```
|
||||
|
||||
#### INIT
|
||||
|
||||
Initial state of the task.
|
||||
|
||||
#### RUNNING
|
||||
|
||||
The task is running.
|
||||
|
||||
#### AWAITING\_USER\_INPUT
|
||||
|
||||
The task is awaiting user input.
|
||||
|
||||
#### PAUSED
|
||||
|
||||
The task is paused.
|
||||
|
||||
#### STOPPED
|
||||
|
||||
The task is stopped.
|
||||
|
||||
#### FINISHED
|
||||
|
||||
The task is finished.
|
||||
|
||||
#### ERROR
|
||||
|
||||
An error occurred during the task.
|
||||
|
||||
## TaskStateAction Objects
|
||||
|
||||
```python
|
||||
class TaskStateAction(str, Enum)
|
||||
```
|
||||
|
||||
#### START
|
||||
|
||||
Starts the task.
|
||||
|
||||
#### PAUSE
|
||||
|
||||
Pauses the task.
|
||||
|
||||
#### RESUME
|
||||
|
||||
Resumes the task.
|
||||
|
||||
#### STOP
|
||||
|
||||
Stops the task.
|
||||
|
||||
@@ -1,132 +0,0 @@
|
||||
---
|
||||
sidebar_label: agent
|
||||
title: opendevin.server.agent.agent
|
||||
---
|
||||
|
||||
## AgentUnit Objects
|
||||
|
||||
```python
|
||||
class AgentUnit()
|
||||
```
|
||||
|
||||
Represents a session with an agent.
|
||||
|
||||
**Attributes**:
|
||||
|
||||
- `controller` - The AgentController instance for controlling the agent.
|
||||
- `agent_task` - The task representing the agent's execution.
|
||||
|
||||
#### \_\_init\_\_
|
||||
|
||||
```python
|
||||
def __init__(sid)
|
||||
```
|
||||
|
||||
Initializes a new instance of the Session class.
|
||||
|
||||
#### send\_error
|
||||
|
||||
```python
|
||||
async def send_error(message)
|
||||
```
|
||||
|
||||
Sends an error message to the client.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `message` - The error message to send.
|
||||
|
||||
#### send\_message
|
||||
|
||||
```python
|
||||
async def send_message(message)
|
||||
```
|
||||
|
||||
Sends a message to the client.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `message` - The message to send.
|
||||
|
||||
#### send
|
||||
|
||||
```python
|
||||
async def send(data)
|
||||
```
|
||||
|
||||
Sends data to the client.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `data` - The data to send.
|
||||
|
||||
#### dispatch
|
||||
|
||||
```python
|
||||
async def dispatch(action: str | None, data: dict)
|
||||
```
|
||||
|
||||
Dispatches actions to the agent from the client.
|
||||
|
||||
#### get\_arg\_or\_default
|
||||
|
||||
```python
|
||||
def get_arg_or_default(_args: dict, key: ConfigType) -> str
|
||||
```
|
||||
|
||||
Gets an argument from the args dictionary or the default value.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `_args` - The args dictionary.
|
||||
- `key` - The key to get.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
The value of the key or the default value.
|
||||
|
||||
#### create\_controller
|
||||
|
||||
```python
|
||||
async def create_controller(start_event: dict)
|
||||
```
|
||||
|
||||
Creates an AgentController instance.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `start_event` - The start event data (optional).
|
||||
|
||||
#### start\_task
|
||||
|
||||
```python
|
||||
async def start_task(start_event)
|
||||
```
|
||||
|
||||
Starts a task for the agent.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `start_event` - The start event data.
|
||||
|
||||
#### set\_task\_state
|
||||
|
||||
```python
|
||||
async def set_task_state(new_state_action: TaskStateAction)
|
||||
```
|
||||
|
||||
Sets the state of the agent task.
|
||||
|
||||
#### on\_agent\_event
|
||||
|
||||
```python
|
||||
async def on_agent_event(event: Observation | Action)
|
||||
```
|
||||
|
||||
Callback function for agent events.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `event` - The agent event (Observation or Action).
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
---
|
||||
sidebar_label: manager
|
||||
title: opendevin.server.agent.manager
|
||||
---
|
||||
|
||||
## AgentManager Objects
|
||||
|
||||
```python
|
||||
class AgentManager()
|
||||
```
|
||||
|
||||
#### register\_agent
|
||||
|
||||
```python
|
||||
def register_agent(sid: str)
|
||||
```
|
||||
|
||||
Registers a new agent.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `sid` - The session ID of the agent.
|
||||
|
||||
#### dispatch
|
||||
|
||||
```python
|
||||
async def dispatch(sid: str, action: str | None, data: dict)
|
||||
```
|
||||
|
||||
Dispatches actions to the agent from the client.
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
---
|
||||
sidebar_label: auth
|
||||
title: opendevin.server.auth.auth
|
||||
---
|
||||
|
||||
#### get\_sid\_from\_token
|
||||
|
||||
```python
|
||||
def get_sid_from_token(token: str) -> str
|
||||
```
|
||||
|
||||
Retrieves the session id from a JWT token.
|
||||
|
||||
**Arguments**:
|
||||
|
||||
- `token` _str_ - The JWT token from which the session id is to be extracted.
|
||||
|
||||
|
||||
**Returns**:
|
||||
|
||||
- `str` - The session id if found and valid, otherwise an empty string.
|
||||
|
||||
#### sign\_token
|
||||
|
||||
```python
|
||||
def sign_token(payload: Dict[str, object]) -> str
|
||||
```
|
||||
|
||||
Signs a JWT token.
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
---
|
||||
sidebar_label: listen
|
||||
title: opendevin.server.listen
|
||||
---
|
||||
|
||||
#### get\_litellm\_models
|
||||
|
||||
```python
|
||||
@app.get('/api/litellm-models')
|
||||
async def get_litellm_models()
|
||||
```
|
||||
|
||||
Get all models supported by LiteLLM.
|
||||
|
||||
#### get\_agents
|
||||
|
||||
```python
|
||||
@app.get('/api/agents')
|
||||
async def get_agents()
|
||||
```
|
||||
|
||||
Get all agents supported by LiteLLM.
|
||||
|
||||
#### get\_token
|
||||
|
||||
```python
|
||||
@app.get('/api/auth')
|
||||
async def get_token(
|
||||
credentials: HTTPAuthorizationCredentials = Depends(security_scheme))
|
||||
```
|
||||
|
||||
Generate a JWT for authentication when starting a WebSocket connection. This endpoint checks if valid credentials
|
||||
are provided and uses them to get a session ID. If no valid credentials are provided, it generates a new session ID.
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
---
|
||||
sidebar_label: manager
|
||||
title: opendevin.server.session.manager
|
||||
---
|
||||
|
||||
## SessionManager Objects
|
||||
|
||||
```python
|
||||
class SessionManager()
|
||||
```
|
||||
|
||||
#### send
|
||||
|
||||
```python
|
||||
async def send(sid: str, data: Dict[str, object]) -> bool
|
||||
```
|
||||
|
||||
Sends data to the client.
|
||||
|
||||
#### send\_error
|
||||
|
||||
```python
|
||||
async def send_error(sid: str, message: str) -> bool
|
||||
```
|
||||
|
||||
Sends an error message to the client.
|
||||
|
||||
#### send\_message
|
||||
|
||||
```python
|
||||
async def send_message(sid: str, message: str) -> bool
|
||||
```
|
||||
|
||||
Sends a message to the client.
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
---
|
||||
sidebar_label: msg_stack
|
||||
title: opendevin.server.session.msg_stack
|
||||
---
|
||||
|
||||
## Message Objects
|
||||
|
||||
```python
|
||||
class Message()
|
||||
```
|
||||
|
||||
#### role
|
||||
|
||||
"user"| "assistant"
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
---
|
||||
sidebar_label: session
|
||||
title: opendevin.server.session.session
|
||||
---
|
||||
|
||||
## Session Objects
|
||||
|
||||
```python
|
||||
class Session()
|
||||
```
|
||||
|
||||
#### send\_error
|
||||
|
||||
```python
|
||||
async def send_error(message: str) -> bool
|
||||
```
|
||||
|
||||
Sends an error message to the client.
|
||||
|
||||
#### send\_message
|
||||
|
||||
```python
|
||||
async def send_message(message: str) -> bool
|
||||
```
|
||||
|
||||
Sends a message to the client.
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
---
|
||||
sidebar_label: system
|
||||
title: opendevin.utils.system
|
||||
---
|
||||
|
||||
#### find\_available\_tcp\_port
|
||||
|
||||
```python
|
||||
def find_available_tcp_port() -> int
|
||||
```
|
||||
|
||||
Find an available TCP port, return -1 if none available.
|
||||
|
||||
3
docs/modules/python/python.md
Normal file
3
docs/modules/python/python.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# Python Docs
|
||||
|
||||
Docs will appear here after deployment.
|
||||
@@ -1,233 +1,5 @@
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"items": [
|
||||
"python/agenthub/SWE_agent/agent",
|
||||
"python/agenthub/SWE_agent/parser"
|
||||
],
|
||||
"label": "agenthub.SWE_agent",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/agenthub/codeact_agent/codeact_agent"
|
||||
],
|
||||
"label": "agenthub.codeact_agent",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/agenthub/delegator_agent/agent"
|
||||
],
|
||||
"label": "agenthub.delegator_agent",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/agenthub/dummy_agent/agent"
|
||||
],
|
||||
"label": "agenthub.dummy_agent",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/agenthub/micro/agent"
|
||||
],
|
||||
"label": "agenthub.micro",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"items": [
|
||||
"python/agenthub/monologue_agent/utils/json",
|
||||
"python/agenthub/monologue_agent/utils/memory",
|
||||
"python/agenthub/monologue_agent/utils/monologue",
|
||||
"python/agenthub/monologue_agent/utils/prompts"
|
||||
],
|
||||
"label": "agenthub.monologue_agent.utils",
|
||||
"type": "category"
|
||||
},
|
||||
"python/agenthub/monologue_agent/agent"
|
||||
],
|
||||
"label": "agenthub.monologue_agent",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/agenthub/planner_agent/agent",
|
||||
"python/agenthub/planner_agent/prompt"
|
||||
],
|
||||
"label": "agenthub.planner_agent",
|
||||
"type": "category"
|
||||
}
|
||||
],
|
||||
"label": "agenthub",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/controller/state/plan"
|
||||
],
|
||||
"label": "opendevin.controller.state",
|
||||
"type": "category"
|
||||
},
|
||||
"python/opendevin/controller/agent",
|
||||
"python/opendevin/controller/agent_controller"
|
||||
],
|
||||
"label": "opendevin.controller",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/core/schema/action",
|
||||
"python/opendevin/core/schema/observation",
|
||||
"python/opendevin/core/schema/task"
|
||||
],
|
||||
"label": "opendevin.core.schema",
|
||||
"type": "category"
|
||||
},
|
||||
"python/opendevin/core/config",
|
||||
"python/opendevin/core/logger",
|
||||
"python/opendevin/core/main"
|
||||
],
|
||||
"label": "opendevin.core",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/events/action/__init__",
|
||||
"python/opendevin/events/action/empty",
|
||||
"python/opendevin/events/action/files",
|
||||
"python/opendevin/events/action/github",
|
||||
"python/opendevin/events/action/tasks"
|
||||
],
|
||||
"label": "opendevin.events.action",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/events/observation/__init__",
|
||||
"python/opendevin/events/observation/browse",
|
||||
"python/opendevin/events/observation/commands",
|
||||
"python/opendevin/events/observation/delegate",
|
||||
"python/opendevin/events/observation/empty",
|
||||
"python/opendevin/events/observation/error",
|
||||
"python/opendevin/events/observation/files",
|
||||
"python/opendevin/events/observation/message",
|
||||
"python/opendevin/events/observation/observation",
|
||||
"python/opendevin/events/observation/recall"
|
||||
],
|
||||
"label": "opendevin.events.observation",
|
||||
"type": "category"
|
||||
}
|
||||
],
|
||||
"label": "opendevin.events",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/llm/llm"
|
||||
],
|
||||
"label": "opendevin.llm",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/runtime/browser/browser_env"
|
||||
],
|
||||
"label": "opendevin.runtime.browser",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/runtime/docker/process"
|
||||
],
|
||||
"label": "opendevin.runtime.docker",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/runtime/e2b/sandbox"
|
||||
],
|
||||
"label": "opendevin.runtime.e2b",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/runtime/plugins/jupyter/__init__"
|
||||
],
|
||||
"label": "opendevin.runtime.plugins.jupyter",
|
||||
"type": "category"
|
||||
},
|
||||
"python/opendevin/runtime/plugins/mixin",
|
||||
"python/opendevin/runtime/plugins/requirement"
|
||||
],
|
||||
"label": "opendevin.runtime.plugins",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/runtime/utils/system"
|
||||
],
|
||||
"label": "opendevin.runtime.utils",
|
||||
"type": "category"
|
||||
},
|
||||
"python/opendevin/runtime/files"
|
||||
],
|
||||
"label": "opendevin.runtime",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/server/agent/agent",
|
||||
"python/opendevin/server/agent/manager"
|
||||
],
|
||||
"label": "opendevin.server.agent",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/server/auth/auth"
|
||||
],
|
||||
"label": "opendevin.server.auth",
|
||||
"type": "category"
|
||||
},
|
||||
{
|
||||
"items": [
|
||||
"python/opendevin/server/session/manager",
|
||||
"python/opendevin/server/session/msg_stack",
|
||||
"python/opendevin/server/session/session"
|
||||
],
|
||||
"label": "opendevin.server.session",
|
||||
"type": "category"
|
||||
},
|
||||
"python/opendevin/server/listen"
|
||||
],
|
||||
"label": "opendevin.server",
|
||||
"type": "category"
|
||||
}
|
||||
],
|
||||
"label": "opendevin",
|
||||
"type": "category"
|
||||
}
|
||||
],
|
||||
"items": ["python/python"],
|
||||
"label": "Backend",
|
||||
"type": "category"
|
||||
}
|
||||
}
|
||||
|
||||
350
poetry.lock
generated
350
poetry.lock
generated
@@ -322,50 +322,6 @@ charset-normalizer = ["charset-normalizer"]
|
||||
html5lib = ["html5lib"]
|
||||
lxml = ["lxml"]
|
||||
|
||||
[[package]]
|
||||
name = "black"
|
||||
version = "23.12.1"
|
||||
description = "The uncompromising code formatter."
|
||||
optional = false
|
||||
python-versions = ">=3.8"
|
||||
files = [
|
||||
{file = "black-23.12.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e0aaf6041986767a5e0ce663c7a2f0e9eaf21e6ff87a5f95cbf3675bfd4c41d2"},
|
||||
{file = "black-23.12.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c88b3711d12905b74206227109272673edce0cb29f27e1385f33b0163c414bba"},
|
||||
{file = "black-23.12.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a920b569dc6b3472513ba6ddea21f440d4b4c699494d2e972a1753cdc25df7b0"},
|
||||
{file = "black-23.12.1-cp310-cp310-win_amd64.whl", hash = "sha256:3fa4be75ef2a6b96ea8d92b1587dd8cb3a35c7e3d51f0738ced0781c3aa3a5a3"},
|
||||
{file = "black-23.12.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:8d4df77958a622f9b5a4c96edb4b8c0034f8434032ab11077ec6c56ae9f384ba"},
|
||||
{file = "black-23.12.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:602cfb1196dc692424c70b6507593a2b29aac0547c1be9a1d1365f0d964c353b"},
|
||||
{file = "black-23.12.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c4352800f14be5b4864016882cdba10755bd50805c95f728011bcb47a4afd59"},
|
||||
{file = "black-23.12.1-cp311-cp311-win_amd64.whl", hash = "sha256:0808494f2b2df923ffc5723ed3c7b096bd76341f6213989759287611e9837d50"},
|
||||
{file = "black-23.12.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:25e57fd232a6d6ff3f4478a6fd0580838e47c93c83eaf1ccc92d4faf27112c4e"},
|
||||
{file = "black-23.12.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2d9e13db441c509a3763a7a3d9a49ccc1b4e974a47be4e08ade2a228876500ec"},
|
||||
{file = "black-23.12.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6d1bd9c210f8b109b1762ec9fd36592fdd528485aadb3f5849b2740ef17e674e"},
|
||||
{file = "black-23.12.1-cp312-cp312-win_amd64.whl", hash = "sha256:ae76c22bde5cbb6bfd211ec343ded2163bba7883c7bc77f6b756a1049436fbb9"},
|
||||
{file = "black-23.12.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1fa88a0f74e50e4487477bc0bb900c6781dbddfdfa32691e780bf854c3b4a47f"},
|
||||
{file = "black-23.12.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a4d6a9668e45ad99d2f8ec70d5c8c04ef4f32f648ef39048d010b0689832ec6d"},
|
||||
{file = "black-23.12.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b18fb2ae6c4bb63eebe5be6bd869ba2f14fd0259bda7d18a46b764d8fb86298a"},
|
||||
{file = "black-23.12.1-cp38-cp38-win_amd64.whl", hash = "sha256:c04b6d9d20e9c13f43eee8ea87d44156b8505ca8a3c878773f68b4e4812a421e"},
|
||||
{file = "black-23.12.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3e1b38b3135fd4c025c28c55ddfc236b05af657828a8a6abe5deec419a0b7055"},
|
||||
{file = "black-23.12.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4f0031eaa7b921db76decd73636ef3a12c942ed367d8c3841a0739412b260a54"},
|
||||
{file = "black-23.12.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:97e56155c6b737854e60a9ab1c598ff2533d57e7506d97af5481141671abf3ea"},
|
||||
{file = "black-23.12.1-cp39-cp39-win_amd64.whl", hash = "sha256:dd15245c8b68fe2b6bd0f32c1556509d11bb33aec9b5d0866dd8e2ed3dba09c2"},
|
||||
{file = "black-23.12.1-py3-none-any.whl", hash = "sha256:78baad24af0f033958cad29731e27363183e140962595def56423e626f4bee3e"},
|
||||
{file = "black-23.12.1.tar.gz", hash = "sha256:4ce3ef14ebe8d9509188014d96af1c456a910d5b5cbf434a09fef7e024b3d0d5"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
click = ">=8.0.0"
|
||||
mypy-extensions = ">=0.4.3"
|
||||
packaging = ">=22.0"
|
||||
pathspec = ">=0.9.0"
|
||||
platformdirs = ">=2"
|
||||
|
||||
[package.extras]
|
||||
colorama = ["colorama (>=0.4.3)"]
|
||||
d = ["aiohttp (>=3.7.4)", "aiohttp (>=3.7.4,!=3.9.0)"]
|
||||
jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"]
|
||||
uvloop = ["uvloop (>=0.15.2)"]
|
||||
|
||||
[[package]]
|
||||
name = "blinker"
|
||||
version = "1.8.1"
|
||||
@@ -1006,52 +962,6 @@ files = [
|
||||
docs = ["ipython", "matplotlib", "numpydoc", "sphinx"]
|
||||
tests = ["pytest", "pytest-cov", "pytest-xdist"]
|
||||
|
||||
[[package]]
|
||||
name = "databind"
|
||||
version = "4.5.1"
|
||||
description = "Databind is a library inspired by jackson-databind to de-/serialize Python dataclasses. The `databind` package will install the full suite of databind packages. Compatible with Python 3.8 and newer."
|
||||
optional = false
|
||||
python-versions = "<4.0.0,>=3.8.0"
|
||||
files = [
|
||||
{file = "databind-4.5.1-py3-none-any.whl", hash = "sha256:e8eae14d2bbf41dfbe598883deda5c8088dfcb3ce55344b216925ea4ad48d5cf"},
|
||||
{file = "databind-4.5.1.tar.gz", hash = "sha256:66f912f100d81acbbe8b9b2c5280a04341bca5d3925669371a551cc354350962"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
Deprecated = ">=1.2.12,<2.0.0"
|
||||
nr-date = ">=2.0.0,<3.0.0"
|
||||
nr-stream = ">=1.0.0,<2.0.0"
|
||||
typeapi = ">=2.0.1,<3"
|
||||
typing-extensions = ">=3.10.0,<5"
|
||||
|
||||
[[package]]
|
||||
name = "databind-core"
|
||||
version = "4.5.1"
|
||||
description = "Databind is a library inspired by jackson-databind to de-/serialize Python dataclasses. Compatible with Python 3.8 and newer. Deprecated, use `databind` package."
|
||||
optional = false
|
||||
python-versions = "<4.0.0,>=3.8.0"
|
||||
files = [
|
||||
{file = "databind.core-4.5.1-py3-none-any.whl", hash = "sha256:df782c1bd2e416e268796918c4bdcdc2b9e948e2c263423ae9af1f5c50087973"},
|
||||
{file = "databind.core-4.5.1.tar.gz", hash = "sha256:d938777ab612188bef2070f12150e1cf07d0659459dd858a12edce80bdad64fa"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
databind = ">=4.5.1,<5.0.0"
|
||||
|
||||
[[package]]
|
||||
name = "databind-json"
|
||||
version = "4.5.1"
|
||||
description = "De-/serialize Python dataclasses to or from JSON payloads. Compatible with Python 3.8 and newer. Deprecated, use `databind` module instead."
|
||||
optional = false
|
||||
python-versions = "<4.0.0,>=3.8.0"
|
||||
files = [
|
||||
{file = "databind.json-4.5.1-py3-none-any.whl", hash = "sha256:d05854afbc0e398f427b6bd6172560eee41ab36ca4953c3b92fd8aa4c81f7502"},
|
||||
{file = "databind.json-4.5.1.tar.gz", hash = "sha256:40363b1ae4322e877a02e4b7b5dc2c9ca8be4176e2b567a3f9718ee52543c1d1"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
databind = ">=4.5.1,<5.0.0"
|
||||
|
||||
[[package]]
|
||||
name = "dataclasses-json"
|
||||
version = "0.6.5"
|
||||
@@ -1197,51 +1107,6 @@ urllib3 = ">=1.26.0"
|
||||
ssh = ["paramiko (>=2.4.3)"]
|
||||
websockets = ["websocket-client (>=1.3.0)"]
|
||||
|
||||
[[package]]
|
||||
name = "docspec"
|
||||
version = "2.2.1"
|
||||
description = "Docspec is a JSON object specification for representing API documentation of programming languages."
|
||||
optional = false
|
||||
python-versions = ">=3.7,<4.0"
|
||||
files = [
|
||||
{file = "docspec-2.2.1-py3-none-any.whl", hash = "sha256:7538f750095a9688c6980ff9a4e029a823a500f64bd00b6b4bdb27951feb31cb"},
|
||||
{file = "docspec-2.2.1.tar.gz", hash = "sha256:4854e77edc0e2de40e785e57e95880f7095a05fe978f8b54cef7a269586e15ff"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
"databind.core" = ">=4.2.6,<5.0.0"
|
||||
"databind.json" = ">=4.2.6,<5.0.0"
|
||||
Deprecated = ">=1.2.12,<2.0.0"
|
||||
|
||||
[[package]]
|
||||
name = "docspec-python"
|
||||
version = "2.2.1"
|
||||
description = "A parser based on lib2to3 producing docspec data from Python source code."
|
||||
optional = false
|
||||
python-versions = ">=3.7,<4.0"
|
||||
files = [
|
||||
{file = "docspec_python-2.2.1-py3-none-any.whl", hash = "sha256:76ac41d35a8face35b2d766c2e8a416fb8832359785d396f0d53bcb00f178e54"},
|
||||
{file = "docspec_python-2.2.1.tar.gz", hash = "sha256:c41b850b4d6f4de30999ea6f82c9cdb9183d9bcba45559ee9173d3dab7281559"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
black = ">=23.1.0,<24.0.0"
|
||||
docspec = ">=2.2.1,<3.0.0"
|
||||
"nr.util" = ">=0.7.0"
|
||||
|
||||
[[package]]
|
||||
name = "docstring-parser"
|
||||
version = "0.11"
|
||||
description = "\"Parse Python docstrings in reST, Google and Numpydoc format\""
|
||||
optional = false
|
||||
python-versions = ">=3.6"
|
||||
files = [
|
||||
{file = "docstring_parser-0.11.tar.gz", hash = "sha256:93b3f8f481c7d24e37c5d9f30293c89e2933fa209421c8abd731dd3ef0715ecb"},
|
||||
]
|
||||
|
||||
[package.extras]
|
||||
test = ["black", "pytest"]
|
||||
|
||||
[[package]]
|
||||
name = "e2b"
|
||||
version = "0.14.14"
|
||||
@@ -2024,13 +1889,13 @@ socks = ["socksio (==1.*)"]
|
||||
|
||||
[[package]]
|
||||
name = "huggingface-hub"
|
||||
version = "0.22.2"
|
||||
version = "0.23.0"
|
||||
description = "Client library to download and publish models, datasets and other repos on the huggingface.co hub"
|
||||
optional = false
|
||||
python-versions = ">=3.8.0"
|
||||
files = [
|
||||
{file = "huggingface_hub-0.22.2-py3-none-any.whl", hash = "sha256:3429e25f38ccb834d310804a3b711e7e4953db5a9e420cc147a5e194ca90fd17"},
|
||||
{file = "huggingface_hub-0.22.2.tar.gz", hash = "sha256:32e9a9a6843c92f253ff9ca16b9985def4d80a93fb357af5353f770ef74a81be"},
|
||||
{file = "huggingface_hub-0.23.0-py3-none-any.whl", hash = "sha256:075c30d48ee7db2bba779190dc526d2c11d422aed6f9044c5e2fdc2c432fdb91"},
|
||||
{file = "huggingface_hub-0.23.0.tar.gz", hash = "sha256:7126dedd10a4c6fac796ced4d87a8cf004efc722a5125c2c09299017fa366fa9"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
@@ -2045,16 +1910,16 @@ tqdm = ">=4.42.1"
|
||||
typing-extensions = ">=3.7.4.3"
|
||||
|
||||
[package.extras]
|
||||
all = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "gradio", "jedi", "minijinja (>=1.0)", "mypy (==1.5.1)", "numpy", "pytest", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.3.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"]
|
||||
all = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio", "jedi", "minijinja (>=1.0)", "mypy (==1.5.1)", "numpy", "pytest", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.3.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"]
|
||||
cli = ["InquirerPy (==0.3.4)"]
|
||||
dev = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "gradio", "jedi", "minijinja (>=1.0)", "mypy (==1.5.1)", "numpy", "pytest", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.3.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"]
|
||||
dev = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio", "jedi", "minijinja (>=1.0)", "mypy (==1.5.1)", "numpy", "pytest", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.3.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"]
|
||||
fastai = ["fastai (>=2.4)", "fastcore (>=1.3.27)", "toml"]
|
||||
hf-transfer = ["hf-transfer (>=0.1.4)"]
|
||||
inference = ["aiohttp", "minijinja (>=1.0)"]
|
||||
quality = ["mypy (==1.5.1)", "ruff (>=0.3.0)"]
|
||||
tensorflow = ["graphviz", "pydot", "tensorflow"]
|
||||
tensorflow-testing = ["keras (<3.0)", "tensorflow"]
|
||||
testing = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "gradio", "jedi", "minijinja (>=1.0)", "numpy", "pytest", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "soundfile", "urllib3 (<2.0)"]
|
||||
testing = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio", "jedi", "minijinja (>=1.0)", "numpy", "pytest", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "soundfile", "urllib3 (<2.0)"]
|
||||
torch = ["safetensors", "torch"]
|
||||
typing = ["types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)"]
|
||||
|
||||
@@ -2172,13 +2037,13 @@ i18n = ["Babel (>=2.7)"]
|
||||
|
||||
[[package]]
|
||||
name = "joblib"
|
||||
version = "1.4.0"
|
||||
version = "1.4.2"
|
||||
description = "Lightweight pipelining with Python functions"
|
||||
optional = false
|
||||
python-versions = ">=3.8"
|
||||
files = [
|
||||
{file = "joblib-1.4.0-py3-none-any.whl", hash = "sha256:42942470d4062537be4d54c83511186da1fc14ba354961a2114da91efa9a4ed7"},
|
||||
{file = "joblib-1.4.0.tar.gz", hash = "sha256:1eb0dc091919cd384490de890cb5dfd538410a6d4b3b54eef09fb8c50b409b1c"},
|
||||
{file = "joblib-1.4.2-py3-none-any.whl", hash = "sha256:06d478d5674cbc267e7496a410ee875abd68e4340feff4490bcb7afb88060ae6"},
|
||||
{file = "joblib-1.4.2.tar.gz", hash = "sha256:2382c5816b2636fbd20a09e0f4e9dad4736765fdfb7dca582943b9c1366b3f0e"},
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -2372,13 +2237,13 @@ types-tqdm = "*"
|
||||
|
||||
[[package]]
|
||||
name = "litellm"
|
||||
version = "1.35.33"
|
||||
version = "1.35.35"
|
||||
description = "Library to easily interface with LLM API providers"
|
||||
optional = false
|
||||
python-versions = "!=2.7.*,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,!=3.7.*,>=3.8"
|
||||
files = [
|
||||
{file = "litellm-1.35.33-py3-none-any.whl", hash = "sha256:7dbbc282ea797febb4ace58bdd1fc42d0f20ea21a2ba576ebc2d933b337d8683"},
|
||||
{file = "litellm-1.35.33.tar.gz", hash = "sha256:0082f6a44ff7ce9d2c1bc5182292c3f58f69c8be99fccb824e750c009f78d112"},
|
||||
{file = "litellm-1.35.35-py3-none-any.whl", hash = "sha256:9dcf4a1fbdb1864de03f2fbcc26cc19ee83449966ad0b373b1d61f64ade963f7"},
|
||||
{file = "litellm-1.35.35.tar.gz", hash = "sha256:f8873892f4a2f082e2f5f4fed5740f341b7d1a7778445785b2af68adbc2793e9"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
@@ -2691,13 +2556,13 @@ llama-index-program-openai = ">=0.1.1,<0.2.0"
|
||||
|
||||
[[package]]
|
||||
name = "llama-index-readers-file"
|
||||
version = "0.1.19"
|
||||
version = "0.1.20"
|
||||
description = "llama-index readers file integration"
|
||||
optional = false
|
||||
python-versions = "<4.0,>=3.8.1"
|
||||
files = [
|
||||
{file = "llama_index_readers_file-0.1.19-py3-none-any.whl", hash = "sha256:25eb6d066dc38753de435e876ef8511c68d84102302c053b7dcb0776db68fced"},
|
||||
{file = "llama_index_readers_file-0.1.19.tar.gz", hash = "sha256:194c1b9b85c265159b7302c7d80adba937aab06f05c170af7fd95c4e7a8aec35"},
|
||||
{file = "llama_index_readers_file-0.1.20-py3-none-any.whl", hash = "sha256:055999f86ad11130445bfe10c0886ddecb63e1b727678ab4ba58602282443289"},
|
||||
{file = "llama_index_readers_file-0.1.20.tar.gz", hash = "sha256:1258c016bc8ee1efe37a3b081384ba47dbca13b92c205d3154ba235fc09cc2fb"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
@@ -2867,7 +2732,6 @@ files = [
|
||||
{file = "lxml-5.2.1-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:9e2addd2d1866fe112bc6f80117bcc6bc25191c5ed1bfbcf9f1386a884252ae8"},
|
||||
{file = "lxml-5.2.1-cp37-cp37m-win32.whl", hash = "sha256:f51969bac61441fd31f028d7b3b45962f3ecebf691a510495e5d2cd8c8092dbd"},
|
||||
{file = "lxml-5.2.1-cp37-cp37m-win_amd64.whl", hash = "sha256:b0b58fbfa1bf7367dde8a557994e3b1637294be6cf2169810375caf8571a085c"},
|
||||
{file = "lxml-5.2.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:3e183c6e3298a2ed5af9d7a356ea823bccaab4ec2349dc9ed83999fd289d14d5"},
|
||||
{file = "lxml-5.2.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:804f74efe22b6a227306dd890eecc4f8c59ff25ca35f1f14e7482bbce96ef10b"},
|
||||
{file = "lxml-5.2.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:08802f0c56ed150cc6885ae0788a321b73505d2263ee56dad84d200cab11c07a"},
|
||||
{file = "lxml-5.2.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f8c09ed18ecb4ebf23e02b8e7a22a05d6411911e6fabef3a36e4f371f4f2585"},
|
||||
@@ -3034,13 +2898,13 @@ files = [
|
||||
|
||||
[[package]]
|
||||
name = "marshmallow"
|
||||
version = "3.21.1"
|
||||
version = "3.21.2"
|
||||
description = "A lightweight library for converting complex datatypes to and from native Python datatypes."
|
||||
optional = false
|
||||
python-versions = ">=3.8"
|
||||
files = [
|
||||
{file = "marshmallow-3.21.1-py3-none-any.whl", hash = "sha256:f085493f79efb0644f270a9bf2892843142d80d7174bbbd2f3713f2a589dc633"},
|
||||
{file = "marshmallow-3.21.1.tar.gz", hash = "sha256:4e65e9e0d80fc9e609574b9983cf32579f305c718afb30d7233ab818571768c3"},
|
||||
{file = "marshmallow-3.21.2-py3-none-any.whl", hash = "sha256:70b54a6282f4704d12c0a41599682c5c5450e843b9ec406308653b47c59648a1"},
|
||||
{file = "marshmallow-3.21.2.tar.gz", hash = "sha256:82408deadd8b33d56338d2182d455db632c6313aa2af61916672146bb32edc56"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
@@ -3048,7 +2912,7 @@ packaging = ">=17.0"
|
||||
|
||||
[package.extras]
|
||||
dev = ["marshmallow[tests]", "pre-commit (>=3.5,<4.0)", "tox"]
|
||||
docs = ["alabaster (==0.7.16)", "autodocsumm (==0.2.12)", "sphinx (==7.2.6)", "sphinx-issues (==4.0.0)", "sphinx-version-warning (==1.1.2)"]
|
||||
docs = ["alabaster (==0.7.16)", "autodocsumm (==0.2.12)", "sphinx (==7.3.7)", "sphinx-issues (==4.1.0)", "sphinx-version-warning (==1.1.2)"]
|
||||
tests = ["pytest", "pytz", "simplejson"]
|
||||
|
||||
[[package]]
|
||||
@@ -3533,43 +3397,6 @@ files = [
|
||||
[package.dependencies]
|
||||
setuptools = "*"
|
||||
|
||||
[[package]]
|
||||
name = "nr-date"
|
||||
version = "2.1.0"
|
||||
description = ""
|
||||
optional = false
|
||||
python-versions = ">=3.6,<4.0"
|
||||
files = [
|
||||
{file = "nr_date-2.1.0-py3-none-any.whl", hash = "sha256:bd672a9dfbdcf7c4b9289fea6750c42490eaee08036a72059dcc78cb236ed568"},
|
||||
{file = "nr_date-2.1.0.tar.gz", hash = "sha256:0643aea13bcdc2a8bc56af9d5e6a89ef244c9744a1ef00cdc735902ba7f7d2e6"},
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "nr-stream"
|
||||
version = "1.1.5"
|
||||
description = ""
|
||||
optional = false
|
||||
python-versions = ">=3.6,<4.0"
|
||||
files = [
|
||||
{file = "nr_stream-1.1.5-py3-none-any.whl", hash = "sha256:47e12150b331ad2cb729cfd9d2abd281c9949809729ba461c6aa87dd9927b2d4"},
|
||||
{file = "nr_stream-1.1.5.tar.gz", hash = "sha256:eb0216c6bfc61a46d4568dba3b588502c610ec8ddef4ac98f3932a2bd7264f65"},
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "nr-util"
|
||||
version = "0.8.12"
|
||||
description = "General purpose Python utility library."
|
||||
optional = false
|
||||
python-versions = ">=3.7,<4.0"
|
||||
files = [
|
||||
{file = "nr.util-0.8.12-py3-none-any.whl", hash = "sha256:91da02ac9795eb8e015372275c1efe54bac9051231ee9b0e7e6f96b0b4e7d2bb"},
|
||||
{file = "nr.util-0.8.12.tar.gz", hash = "sha256:a4549c2033d99d2f0379b3f3d233fd2a8ade286bbf0b3ad0cc7cea16022214f4"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
deprecated = ">=1.2.0,<2.0.0"
|
||||
typing-extensions = ">=3.0.0"
|
||||
|
||||
[[package]]
|
||||
name = "numpy"
|
||||
version = "1.26.4"
|
||||
@@ -3816,13 +3643,13 @@ sympy = "*"
|
||||
|
||||
[[package]]
|
||||
name = "openai"
|
||||
version = "1.25.0"
|
||||
version = "1.25.1"
|
||||
description = "The official Python library for the openai API"
|
||||
optional = false
|
||||
python-versions = ">=3.7.1"
|
||||
files = [
|
||||
{file = "openai-1.25.0-py3-none-any.whl", hash = "sha256:d0cfdf6afb31a5dabf3b95966cb31f3c757a0edaf3228715409cb404b9933de0"},
|
||||
{file = "openai-1.25.0.tar.gz", hash = "sha256:22c35b26b8281cd2759b1a4c05ac99e2f2b26a9df71f90a0b4ddb75aa27adc81"},
|
||||
{file = "openai-1.25.1-py3-none-any.whl", hash = "sha256:aa2f381f476f5fa4df8728a34a3e454c321caa064b7b68ab6e9daa1ed082dbf9"},
|
||||
{file = "openai-1.25.1.tar.gz", hash = "sha256:f561ce86f4b4008eb6c78622d641e4b7e1ab8a8cdb15d2f0b2a49942d40d21a8"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
@@ -4148,17 +3975,6 @@ sql-other = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-d
|
||||
test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)"]
|
||||
xml = ["lxml (>=4.9.2)"]
|
||||
|
||||
[[package]]
|
||||
name = "pathspec"
|
||||
version = "0.12.1"
|
||||
description = "Utility library for gitignore style pattern matching of file paths."
|
||||
optional = false
|
||||
python-versions = ">=3.8"
|
||||
files = [
|
||||
{file = "pathspec-0.12.1-py3-none-any.whl", hash = "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"},
|
||||
{file = "pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"},
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pexpect"
|
||||
version = "4.9.0"
|
||||
@@ -4623,33 +4439,6 @@ files = [
|
||||
[package.dependencies]
|
||||
typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0"
|
||||
|
||||
[[package]]
|
||||
name = "pydoc-markdown"
|
||||
version = "4.8.2"
|
||||
description = "Create Python API documentation in Markdown format."
|
||||
optional = false
|
||||
python-versions = ">=3.7,<4.0"
|
||||
files = [
|
||||
{file = "pydoc_markdown-4.8.2-py3-none-any.whl", hash = "sha256:203f74119e6bb2f9deba43d452422de7c8ec31955b61e0620fa4dd8c2611715f"},
|
||||
{file = "pydoc_markdown-4.8.2.tar.gz", hash = "sha256:fb6c927e31386de17472d42f9bd3d3be2905977d026f6216881c65145aa67f0b"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
click = ">=7.1,<9.0"
|
||||
"databind.core" = ">=4.4.0,<5.0.0"
|
||||
"databind.json" = ">=4.4.0,<5.0.0"
|
||||
docspec = ">=2.2.1,<3.0.0"
|
||||
docspec-python = ">=2.2.1,<3.0.0"
|
||||
docstring-parser = ">=0.11,<0.12"
|
||||
jinja2 = ">=3.0.0,<4.0.0"
|
||||
"nr.util" = ">=0.7.5,<1.0.0"
|
||||
PyYAML = ">=5.0,<7.0"
|
||||
requests = ">=2.23.0,<3.0.0"
|
||||
tomli = ">=2.0.0,<3.0.0"
|
||||
tomli_w = ">=1.0.0,<2.0.0"
|
||||
watchdog = "*"
|
||||
yapf = ">=0.30.0"
|
||||
|
||||
[[package]]
|
||||
name = "pyee"
|
||||
version = "11.0.1"
|
||||
@@ -5818,28 +5607,6 @@ files = [
|
||||
{file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"},
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tomli"
|
||||
version = "2.0.1"
|
||||
description = "A lil' TOML parser"
|
||||
optional = false
|
||||
python-versions = ">=3.7"
|
||||
files = [
|
||||
{file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"},
|
||||
{file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"},
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tomli-w"
|
||||
version = "1.0.0"
|
||||
description = "A lil' TOML writer"
|
||||
optional = false
|
||||
python-versions = ">=3.7"
|
||||
files = [
|
||||
{file = "tomli_w-1.0.0-py3-none-any.whl", hash = "sha256:9f2a07e8be30a0729e533ec968016807069991ae2fd921a78d42f429ae5f4463"},
|
||||
{file = "tomli_w-1.0.0.tar.gz", hash = "sha256:f463434305e0336248cac9c2dc8076b707d8a12d019dd349f5c1e382dd1ae1b9"},
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "torch"
|
||||
version = "2.2.2"
|
||||
@@ -6009,20 +5776,6 @@ build = ["cmake (>=3.20)", "lit"]
|
||||
tests = ["autopep8", "flake8", "isort", "numpy", "pytest", "scipy (>=1.7.1)", "torch"]
|
||||
tutorials = ["matplotlib", "pandas", "tabulate", "torch"]
|
||||
|
||||
[[package]]
|
||||
name = "typeapi"
|
||||
version = "2.2.1"
|
||||
description = ""
|
||||
optional = false
|
||||
python-versions = ">=3.8,<4.0"
|
||||
files = [
|
||||
{file = "typeapi-2.2.1-py3-none-any.whl", hash = "sha256:e5ef719e7e6f5c7b1ae566f8751d094dbd93422203ef43263468a6e69a6ae33c"},
|
||||
{file = "typeapi-2.2.1.tar.gz", hash = "sha256:181a30c6dd79c2ed70bba8c50e56a889cbba0f479b187698513c985fbadec47f"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
typing-extensions = ">=3.0.0"
|
||||
|
||||
[[package]]
|
||||
name = "typer"
|
||||
version = "0.12.3"
|
||||
@@ -6216,47 +5969,6 @@ platformdirs = ">=3.9.1,<5"
|
||||
docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.2,!=7.3)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.6)"]
|
||||
test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23.1)", "pytest (>=7.4)", "pytest-env (>=0.8.2)", "pytest-freezer (>=0.4.8)", "pytest-mock (>=3.11.1)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)", "setuptools (>=68)", "time-machine (>=2.10)"]
|
||||
|
||||
[[package]]
|
||||
name = "watchdog"
|
||||
version = "4.0.0"
|
||||
description = "Filesystem events monitoring"
|
||||
optional = false
|
||||
python-versions = ">=3.8"
|
||||
files = [
|
||||
{file = "watchdog-4.0.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:39cb34b1f1afbf23e9562501673e7146777efe95da24fab5707b88f7fb11649b"},
|
||||
{file = "watchdog-4.0.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c522392acc5e962bcac3b22b9592493ffd06d1fc5d755954e6be9f4990de932b"},
|
||||
{file = "watchdog-4.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6c47bdd680009b11c9ac382163e05ca43baf4127954c5f6d0250e7d772d2b80c"},
|
||||
{file = "watchdog-4.0.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8350d4055505412a426b6ad8c521bc7d367d1637a762c70fdd93a3a0d595990b"},
|
||||
{file = "watchdog-4.0.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c17d98799f32e3f55f181f19dd2021d762eb38fdd381b4a748b9f5a36738e935"},
|
||||
{file = "watchdog-4.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4986db5e8880b0e6b7cd52ba36255d4793bf5cdc95bd6264806c233173b1ec0b"},
|
||||
{file = "watchdog-4.0.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:11e12fafb13372e18ca1bbf12d50f593e7280646687463dd47730fd4f4d5d257"},
|
||||
{file = "watchdog-4.0.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:5369136a6474678e02426bd984466343924d1df8e2fd94a9b443cb7e3aa20d19"},
|
||||
{file = "watchdog-4.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:76ad8484379695f3fe46228962017a7e1337e9acadafed67eb20aabb175df98b"},
|
||||
{file = "watchdog-4.0.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:45cc09cc4c3b43fb10b59ef4d07318d9a3ecdbff03abd2e36e77b6dd9f9a5c85"},
|
||||
{file = "watchdog-4.0.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:eed82cdf79cd7f0232e2fdc1ad05b06a5e102a43e331f7d041e5f0e0a34a51c4"},
|
||||
{file = "watchdog-4.0.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:ba30a896166f0fee83183cec913298151b73164160d965af2e93a20bbd2ab605"},
|
||||
{file = "watchdog-4.0.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:d18d7f18a47de6863cd480734613502904611730f8def45fc52a5d97503e5101"},
|
||||
{file = "watchdog-4.0.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2895bf0518361a9728773083908801a376743bcc37dfa252b801af8fd281b1ca"},
|
||||
{file = "watchdog-4.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:87e9df830022488e235dd601478c15ad73a0389628588ba0b028cb74eb72fed8"},
|
||||
{file = "watchdog-4.0.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:6e949a8a94186bced05b6508faa61b7adacc911115664ccb1923b9ad1f1ccf7b"},
|
||||
{file = "watchdog-4.0.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:6a4db54edea37d1058b08947c789a2354ee02972ed5d1e0dca9b0b820f4c7f92"},
|
||||
{file = "watchdog-4.0.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:d31481ccf4694a8416b681544c23bd271f5a123162ab603c7d7d2dd7dd901a07"},
|
||||
{file = "watchdog-4.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:8fec441f5adcf81dd240a5fe78e3d83767999771630b5ddfc5867827a34fa3d3"},
|
||||
{file = "watchdog-4.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:6a9c71a0b02985b4b0b6d14b875a6c86ddea2fdbebd0c9a720a806a8bbffc69f"},
|
||||
{file = "watchdog-4.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:557ba04c816d23ce98a06e70af6abaa0485f6d94994ec78a42b05d1c03dcbd50"},
|
||||
{file = "watchdog-4.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:d0f9bd1fd919134d459d8abf954f63886745f4660ef66480b9d753a7c9d40927"},
|
||||
{file = "watchdog-4.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:f9b2fdca47dc855516b2d66eef3c39f2672cbf7e7a42e7e67ad2cbfcd6ba107d"},
|
||||
{file = "watchdog-4.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:73c7a935e62033bd5e8f0da33a4dcb763da2361921a69a5a95aaf6c93aa03a87"},
|
||||
{file = "watchdog-4.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:6a80d5cae8c265842c7419c560b9961561556c4361b297b4c431903f8c33b269"},
|
||||
{file = "watchdog-4.0.0-py3-none-win32.whl", hash = "sha256:8f9a542c979df62098ae9c58b19e03ad3df1c9d8c6895d96c0d51da17b243b1c"},
|
||||
{file = "watchdog-4.0.0-py3-none-win_amd64.whl", hash = "sha256:f970663fa4f7e80401a7b0cbeec00fa801bf0287d93d48368fc3e6fa32716245"},
|
||||
{file = "watchdog-4.0.0-py3-none-win_ia64.whl", hash = "sha256:9a03e16e55465177d416699331b0f3564138f1807ecc5f2de9d55d8f188d08c7"},
|
||||
{file = "watchdog-4.0.0.tar.gz", hash = "sha256:e3e7065cbdabe6183ab82199d7a4f6b3ba0a438c5a512a68559846ccb76a78ec"},
|
||||
]
|
||||
|
||||
[package.extras]
|
||||
watchmedo = ["PyYAML (>=3.10)"]
|
||||
|
||||
[[package]]
|
||||
name = "watchfiles"
|
||||
version = "0.21.0"
|
||||
@@ -6654,22 +6366,6 @@ files = [
|
||||
{file = "xxhash-3.4.1.tar.gz", hash = "sha256:0379d6cf1ff987cd421609a264ce025e74f346e3e145dd106c0cc2e3ec3f99a9"},
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "yapf"
|
||||
version = "0.40.2"
|
||||
description = "A formatter for Python code"
|
||||
optional = false
|
||||
python-versions = ">=3.7"
|
||||
files = [
|
||||
{file = "yapf-0.40.2-py3-none-any.whl", hash = "sha256:adc8b5dd02c0143108878c499284205adb258aad6db6634e5b869e7ee2bd548b"},
|
||||
{file = "yapf-0.40.2.tar.gz", hash = "sha256:4dab8a5ed7134e26d57c1647c7483afb3f136878b579062b786c9ba16b94637b"},
|
||||
]
|
||||
|
||||
[package.dependencies]
|
||||
importlib-metadata = ">=6.6.0"
|
||||
platformdirs = ">=3.5.1"
|
||||
tomli = ">=2.0.1"
|
||||
|
||||
[[package]]
|
||||
name = "yarl"
|
||||
version = "1.9.4"
|
||||
@@ -6791,4 +6487,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p
|
||||
[metadata]
|
||||
lock-version = "2.0"
|
||||
python-versions = "^3.11"
|
||||
content-hash = "07604363a0e1cf5de1999088313c13c909caf052624572a9ec4b41494eab3ef3"
|
||||
content-hash = "e744168aeffb105a3bf3a19475fc3784ee3770e9446051024f0faef5ebbef675"
|
||||
|
||||
@@ -41,7 +41,6 @@ llama-index-embeddings-ollama = "*"
|
||||
ruff = "0.3.7"
|
||||
mypy = "1.9.0"
|
||||
pre-commit = "3.7.0"
|
||||
pydoc-markdown = "^4.8.2"
|
||||
|
||||
[tool.poetry.group.test.dependencies]
|
||||
pytest = "*"
|
||||
|
||||
Reference in New Issue
Block a user