Commit Graph

49 Commits (bf10df612e4f19086590ba4112a7ffe880f04f93)

Author SHA1 Message Date
Reinier van der Leer db0e726954 fix(agent, benchmark): Specify `path_type=Path` for CLI path options/arguments
Without `path_type=Path`, an option/argument with `type=click.Path()` will return a `str`.
2024-07-03 15:21:04 -06:00
Krzysztof Czerwinski 7cb4d4a903
feat(forge, agent, benchmark): Upgrade to Pydantic v2 ()
Update Pydantic dependency of `autogpt`, `forge` and `benchmark` to `^2.7`
[Pydantic Migration Guide](https://docs.pydantic.dev/2.7/migration/)

- Migrate usages of now-deprecated functions to their replacements
- Update `Field` definitions
  - Ellipsis `...` for required fields is deprecated
  - `Field` no longer supports extra `kwargs`, replace use of this feature with field metadata
- Replace `Config` class for specifying model configuration with `model_config = ConfigDict(..)`
- Removed `ModelContainer` in `BaseAgent`, component configuration dict is now directly serialized using Pydantic v2 helper functions
- Forked `agent-protocol` and updated `packages/client/python` for Pydantic v2 support: https://github.com/Significant-Gravitas/agent-protocol

---------

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2024-07-02 20:45:32 +02:00
Reinier van der Leer f107ff8cf0
Set up unified pre-commit + CI w/ linting + type checking & FIX EVERYTHING ()
- **FIX ALL LINT/TYPE ERRORS IN AUTOGPT, FORGE, AND BENCHMARK**

### Linting
- Clean up linter configs for `autogpt`, `forge`, and `benchmark`
- Add type checking with Pyright
- Create unified pre-commit config
- Create unified linting and type checking CI workflow

### Testing
- Synchronize CI test setups for `autogpt`, `forge`, and `benchmark`
   - Add missing pytest-cov to benchmark dependencies
- Mark GCS tests as slow to speed up pre-commit test runs
- Repair `forge` test suite
  - Add `AgentDB.close()` method for test DB teardown in db_test.py
  - Use actual temporary dir instead of forge/test_workspace/
- Move left-behind dependencies for moved `forge`-code to from autogpt to forge

### Notable type changes
- Replace uses of `ChatModelProvider` by `MultiProvider`
- Removed unnecessary exports from various __init__.py
- Simplify `FileStorage.open_file` signature by removing `IOBase` from return type union
  - Implement `S3BinaryIOWrapper(BinaryIO)` type interposer for `S3FileStorage`

- Expand overloads of `GCSFileStorage.open_file` for improved typing of read and write modes

  Had to silence type checking for the extra overloads, because (I think) Pyright is reporting a false-positive:
  https://github.com/microsoft/pyright/issues/8007

- Change `count_tokens`, `get_tokenizer`, `count_message_tokens` methods on `ModelProvider`s from class methods to instance methods

- Move `CompletionModelFunction.schema` method -> helper function `format_function_def_for_openai` in `forge.llm.providers.openai`

- Rename `ModelProvider` -> `BaseModelProvider`
- Rename `ChatModelProvider` -> `BaseChatModelProvider`
- Add type `ChatModelProvider` which is a union of all subclasses of `BaseChatModelProvider`

### Removed rather than fixed
- Remove deprecated and broken autogpt/agbenchmark_config/benchmarks.py
- Various base classes and properties on base classes in `forge.llm.providers.schema` and `forge.models.providers`

### Fixes for other issues that came to light
- Clean up `forge.agent_protocol.api_router`, `forge.agent_protocol.database`, and `forge.agent.agent`

- Add fallback behavior to `ImageGeneratorComponent`
   - Remove test for deprecated failure behavior

- Fix `agbenchmark.challenges.builtin` challenge exclusion mechanism on Windows

- Fix `_tool_calls_compat_extract_calls` in `forge.llm.providers.openai`

- Add support for `any` (= no type specified) in `JSONSchema.typescript_type`
2024-05-28 05:04:21 +02:00
Reinier van der Leer c26c79c34c
fix(benchmark/reports): Resolve error in format.py on `attempt.cost` is `None` 2024-02-29 19:01:47 +01:00
Reinier van der Leer d5f2bbf093
fix(benchmark/reports): Make format.py executable 2024-02-20 14:50:32 +01:00
Reinier van der Leer bfd479a50b
feat(benchmark): Add reports/format.py script to convert report.json to markdown 2024-02-19 17:13:05 +01:00
merwanehamadi 18e576cb53
Structure challenges () 2023-09-21 20:06:37 -07:00
merwanehamadi ff4c76ba00
Make agbenchmark a proxy of the evaluated agent ()
Make agbenchmark a Proxy of the evaluated agent

Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-20 16:06:00 -07:00
Silen Naihin f95a285b59
Merge branch 'master' into feat/monitor 2023-09-11 18:21:52 -07:00
Silen Naihin 39efed59af small data changes 2023-09-11 18:20:03 -07:00
Auto-GPT-Bot 5f82c7533c beebot-20230911151335 2023-09-11 15:13:35 +00:00
Auto-GPT-Bot a41cfedfe7 mini-agi-20230911081923 2023-09-11 08:19:24 +00:00
Auto-GPT-Bot 0268b42e20 Auto-GPT-20230911080932 2023-09-11 08:09:32 +00:00
Auto-GPT-Bot 45589e833d gpt-engineer-20230911080814 2023-09-11 08:08:14 +00:00
Auto-GPT-Bot 7e7830a1d7 PolyGPT-20230911080731 2023-09-11 08:07:32 +00:00
Auto-GPT-Bot 8790733ab5 babyagi-20230911080705 2023-09-11 08:07:05 +00:00
Auto-GPT-Bot 07fb0deb49 Auto-GPT-Turbo-20230911080702 2023-09-11 08:07:02 +00:00
Auto-GPT-Bot b290d02688 beebot-20230911080504 2023-09-11 08:05:04 +00:00
Auto-GPT-Bot 6ee25868a8 mini-agi-20230910081622 2023-09-10 08:16:22 +00:00
Auto-GPT-Bot bf476e9e05 Auto-GPT-20230910080828 2023-09-10 08:08:28 +00:00
Auto-GPT-Bot 732d16dcee gpt-engineer-20230910080743 2023-09-10 08:07:44 +00:00
Auto-GPT-Bot 17a2ec13dc babyagi-20230910080714 2023-09-10 08:07:15 +00:00
Auto-GPT-Bot 0f96db5e90 PolyGPT-20230910080612 2023-09-10 08:06:13 +00:00
Auto-GPT-Bot bfd76c53d7 beebot-20230910080502 2023-09-10 08:05:02 +00:00
Auto-GPT-Bot 608372f4dd Auto-GPT-Turbo-20230909082408 2023-09-09 08:24:09 +00:00
Auto-GPT-Bot 75f68a80f3 mini-agi-20230909081316 2023-09-09 08:13:17 +00:00
Auto-GPT-Bot cedad3b976 gpt-engineer-20230909080728 2023-09-09 08:07:29 +00:00
Auto-GPT-Bot 993c7d53e8 babyagi-20230909080645 2023-09-09 08:06:45 +00:00
Auto-GPT-Bot 3edd5613ec PolyGPT-20230909080643 2023-09-09 08:06:43 +00:00
Auto-GPT-Bot b44e9e41f4 beebot-20230909080501 2023-09-09 08:05:01 +00:00
Auto-GPT-Bot 03a2882915 mini-agi-20230908081451 2023-09-08 08:14:51 +00:00
Auto-GPT-Bot a5aa8446af gpt-engineer-20230908080916 2023-09-08 08:09:17 +00:00
Auto-GPT-Bot fd109ba1f3 Auto-GPT-20230908080910 2023-09-08 08:09:11 +00:00
Auto-GPT-Bot e626404f00 babyagi-20230908080830 2023-09-08 08:08:31 +00:00
Auto-GPT-Bot dd5788968b PolyGPT-20230908080735 2023-09-08 08:07:36 +00:00
Auto-GPT-Bot 60ccf70ca2 beebot-20230908080450 2023-09-08 08:04:50 +00:00
Auto-GPT-Bot f416e59ed7 mini-agi-20230908012629 2023-09-08 01:26:29 +00:00
Auto-GPT-Bot 86170b40df Auto-GPT-20230908012036 2023-09-08 01:20:37 +00:00
Auto-GPT-Bot dcda11f3fc gpt-engineer-20230908012012 2023-09-08 01:20:12 +00:00
Auto-GPT-Bot b505e358e5 babyagi-20230908011954 2023-09-08 01:19:55 +00:00
Auto-GPT-Bot b2324f2888 Auto-GPT-Turbo-20230908011918 2023-09-08 01:19:18 +00:00
Auto-GPT-Bot 95bc1e7660 PolyGPT-20230908011847 2023-09-08 01:18:47 +00:00
Auto-GPT-Bot 40ce4a1b6b beebot-20230908011703 2023-09-08 01:17:03 +00:00
Auto-GPT-Bot 85a7fb33e3 babyagi-20230908003449 2023-09-08 00:34:49 +00:00
merwanehamadi 0c0e17c349
Merge branch 'master' into name-agents-like-github-repo 2023-09-07 17:26:54 -07:00
Merwane Hamadi b512808653 Name agents like their github repos
Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-07 17:25:50 -07:00
Auto-GPT-Bot 01796cb940 mini-agi-20230908002003 2023-09-08 00:20:03 +00:00
Merwane Hamadi ca9dadb28f Less data in spreadsheet 2023-09-06 23:16:18 -07:00
Auto-GPT-Bot 45c15e370f Auto-GPT-20230905085638
Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-05 10:10:03 -07:00