Commit Graph

49 Commits

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 (#7280)
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 (#7171)
- **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 (#5296) 2023-09-21 20:06:37 -07:00
merwanehamadi
ff4c76ba00 Make agbenchmark a proxy of the evaluated agent (#5279)
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