Commit Graph

2110 Commits (f0a5250da5d8893ba8ec7318384d4e2996f98df4)

Author SHA1 Message Date
Reinier van der Leer f0a5250da5
Implement loading `MemoryItem`s from file in `JSONFileMemory` (#4703)
Further changes:
* remove `init` param from `get_memory()`, replace usages by `memory.clear()`
* make token length calculation optional in `MemoryItem.dump()`
2023-06-15 17:45:14 +02:00
James Collins 6e6e7fcc9a
Extract openai API calls and retry at lowest level (#3696)
* Extract open ai api calls and retry at lowest level

* Forgot a test

* Gotta fix my local docker config so I can let pre-commit hooks run, ugh

* fix: merge artiface

* Fix linting

* Update memory.vector.utils

* feat: make sure resp exists

* fix: raise error message if created

* feat: rename file

* fix: partial test fix

* fix: update comments

* fix: linting

* fix: remove broken test

* fix: require a model to exist

* fix: BaseError issue

* fix: runtime error

* Fix mock response in test_make_agent

* add 429 as errors to retry

---------

Co-authored-by: k-boikov <64261260+k-boikov@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nick@ntindle.com>
Co-authored-by: Reinier van der Leer <github@pwuts.nl>
Co-authored-by: Nicholas Tindle <nicktindle@outlook.com>
Co-authored-by: Luke K (pr-0f3t) <2609441+lc0rp@users.noreply.github.com>
Co-authored-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-06-14 07:59:26 -07:00
Erik Peterson 49d1a5a17b
Rework plugin config to be file-based (#4673) 2023-06-13 20:54:55 -07:00
merwanehamadi 0c8f2cfd1c
Fix autogpt docker image not working because missing prompt_settings (#4680)
Co-authored-by: Richard Beales <rich@richbeales.net>
2023-06-13 20:18:39 +01:00
merwanehamadi 3df8c1b501
Make benchmarks create cassettes without using them (#4664) 2023-06-13 11:29:20 -07:00
Auto-GPT-Bot 857c330d58 Update challenge scores 2023-06-13 16:59:27 +00:00
Erik Peterson 07d9b584f7
Correct and clean up JSON handling (#4655)
* Correct and clean up JSON handling

* Use ast for message history too

* Lint

* Add comments explaining why we use literal_eval

* Add descriptions to llm_response_format schema

* Parse responses in code blocks

* Be more careful when parsing in code blocks

* Lint
2023-06-13 09:54:50 -07:00
Kinance 7bf39cbb72
Include the token length of the current summary (#4670)
Co-authored-by: merwanehamadi <merwanehamadi@gmail.com>
2023-06-12 16:29:11 -07:00
Reinier van der Leer f277e6aa2d
Strip spaces from the end of truncated ai_name in log_cycle.py (#4672) 2023-06-12 15:14:15 -07:00
merwanehamadi d5afbbee26
Add challenge name and level to pytest logs (#4661) 2023-06-12 08:03:14 -07:00
Reinier van der Leer a9d177eeeb
Remove unused function `split_file` from file_operations.py (#4658) 2023-06-12 02:20:39 +02:00
Kinance ff46c16805
Remove extra spaces in summarization prompt (#4660)
* Implement Batch Running Summarization to avoid max token error (#4652)

* Fix extra space in prompt

---------

Co-authored-by: Reinier van der Leer <github@pwuts.nl>
2023-06-12 02:13:47 +02:00
Reinier van der Leer 62dd1675a0
Add basic Netlify config (#4662) 2023-06-12 02:00:57 +02:00
David e60dfca9fc
Fix run.sh shebang (#4561)
Co-authored-by: Nicholas Tindle <nick@ntindle.com>
Co-authored-by: Reinier van der Leer <github@pwuts.nl>
2023-06-12 01:44:18 +02:00
digger yu a7faab32fe
Fix typo in docs/setup.md (#4613)
fix typo: depedencies -> dependencies

Co-authored-by: Reinier van der Leer <github@pwuts.nl>
2023-06-12 01:17:48 +02:00
merwanehamadi 2ce6ae6707
Change memory challenge expectations (#4657) 2023-06-11 14:34:02 -07:00
Erik Peterson fd04db12fa
Use prompt_toolkit to enable keyboard navigation in CLI (#4649)
* Use prompt_toolkit to enable keyboard navigation in CLI

* Also update other tests

---------

Co-authored-by: merwanehamadi <merwanehamadi@gmail.com>
2023-06-11 14:19:42 -07:00
Kinance bc5dbb6692
Implement Batch Summarization in MessageHistory Class to manage context length under model's token limit (#4652)
* Implement Batch Running Summarization to avoid max token error

* Rename test func
2023-06-11 13:04:41 -07:00
merwanehamadi 9150f32f8b
Fix benchmark logs (#4653) 2023-06-11 15:34:57 +01:00
merwanehamadi 6fb9b6d03b
Retry regression tests (#4648) 2023-06-11 15:21:26 +01:00
Auto-GPT-Bot 4e621280bb Update cassette submodule 2023-06-10 22:51:23 +00:00
Erik Peterson 0594ba33a2
Pass agent to commands instead of config (#4645)
* Add config as attribute to Agent, rename old config to ai_config

* Code review: Pass ai_config

* Pass agent to commands instead of config

* Lint

* Fix merge error

* Fix memory challenge a

---------

Co-authored-by: Nicholas Tindle <nick@ntindle.com>
Co-authored-by: merwanehamadi <merwanehamadi@gmail.com>
2023-06-10 15:48:50 -07:00
merwanehamadi 097ce08908
Create benchmarks.yml (#4647) 2023-06-10 15:11:24 -07:00
merwanehamadi c1ee8cb62e
Upload logs as artifacts (#4640) 2023-06-10 15:07:02 -07:00
Erik Peterson 6b9e3b21d3
Add config as attribute to Agent, rename old config to ai_config (#4638)
* Add config as attribute to Agent, rename old config to ai_config

* Code review: Pass ai_config

---------

Co-authored-by: Nicholas Tindle <nick@ntindle.com>
Co-authored-by: merwanehamadi <merwanehamadi@gmail.com>
2023-06-10 14:47:26 -07:00
Erik Peterson 15c6b0c1c3
Implement directory-based plugin system (#4548)
* Implement directory-based plugin system

* Fix Selenium test

---------

Co-authored-by: Nicholas Tindle <nick@ntindle.com>
Co-authored-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-06-10 13:16:00 -07:00
DGdev91 6ff8478118
Add settings for custom base url (#2594)
* Add settings for custom base url and embedding dimension

Making the openai base url and embedding dimension configurable, these are useful to integrate AutoGPT with other models, like LLaMA

* Update to milvus.py to load the configuration also in the init_collection function

* Update radismem.py to get rid of Config() loading

* Update local.py to get rid of Config() loading

* Correct code format (python black)

* Revert DEFAULT_EMBED_DIM name to EMBED_DIM to keep tests  valid

* Better description for EMBED_DIM setting

* Set MockConfig to the type Config in Milvus test

* Fix formatting

* Update Milvus test, using Config() instead of building a mock config

* using the last milvus test code from main

* Remove embed_dim , no more needed after #4208

* Add example for OPENAI_BASE_URL

---------

Co-authored-by: Nicholas Tindle <nick@ntindle.com>
Co-authored-by: Reinier van der Leer <github@pwuts.nl>
Co-authored-by: merwanehamadi <merwanehamadi@gmail.com>
2023-06-10 13:57:42 +02:00
merwanehamadi 3c51ff501f
dcrement memory challenge c (#4639) 2023-06-09 20:46:06 -07:00
Auto-GPT-Bot f5a447308d Update cassette submodule 2023-06-10 00:29:33 +00:00
Erik Peterson fdca233fe3
Fix prompt issue causing 'No Command' issues and challenge to fail (#4623)
Co-authored-by: merwanehamadi <merwanehamadi@gmail.com>
2023-06-09 17:25:03 -07:00
Auto-GPT-Bot 3f2547295f Update cassette submodule 2023-06-09 22:31:11 +00:00
Erik Peterson 5fe600af9d
Clean up and fix issues with env configuration and .env.template (#4630)
Co-authored-by: merwanehamadi <merwanehamadi@gmail.com>
2023-06-09 15:28:30 -07:00
merwanehamadi 3081f56ecb
Quicker logs in pytest (#4486) 2023-06-09 15:18:56 -07:00
Auto-GPT-Bot 923c67e92a Update cassette submodule 2023-06-09 22:06:01 +00:00
javableu 474a9c4d95
False believes challenge based on sally anne test. (#4167)
* False believes challenge based on sally anne test.

* Update test_memory_challenge_d.py

* Update challenge_d.md

Some text appearing in bold

* Update test_memory_challenge_d.py

* Update test_memory_challenge_d.py

* Update test_memory_challenge_d.py

* Update test_memory_challenge_d.py

black  test_memory_challenge_d.py

* Update test_memory_challenge_d.py

replaced the dynamic time depending of the level to a fix time

* Update test_memory_challenge_d.py

isort command for the libraries

* Refactored memory challenge a

---------

Co-authored-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-06-09 15:02:41 -07:00
Erik Peterson ff4e53d0e6
Streamline / clarify shell command control configuration (#4628)
* Streamline / clarify shell command control configuration

* Fix lint
2023-06-09 11:48:20 -07:00
Erik Peterson cce50bef50
Fix issues with information retrieval challenge a (#4622)
Co-authored-by: merwanehamadi <merwanehamadi@gmail.com>
2023-06-09 11:02:52 -07:00
Auto-GPT-Bot 8215039785 Update cassette submodule 2023-06-09 17:46:06 +00:00
Erik Peterson 94280b2d14
Add command for directly executing python code (#4581)
* Add command for directly executing python code

* Fix docstring

* Clarify / update filename references

---------

Co-authored-by: merwanehamadi <merwanehamadi@gmail.com>
2023-06-09 10:40:32 -07:00
merwanehamadi 3d06b2e4c0
Decrement information retrieval challenge a (#4637) 2023-06-09 10:02:03 -07:00
merwanehamadi 12ed5a957b
Fix debug code challenge (#4632) 2023-06-09 08:40:06 -07:00
merwanehamadi 3b0d49a3e0
Make test write file hard (#4481) 2023-06-09 07:50:57 -07:00
merwanehamadi bd2e26a20f
Inform users that challenges can be flaky (#4616)
* Inform users that challenges can be flaky

* Update challenge_decorator.py
2023-06-09 07:43:56 -07:00
merwanehamadi f4505add69
Set proxy headers as secrets (#4620) 2023-06-07 19:39:07 -07:00
Stefan Ayala 1e851ba3ea
Feat set token limits based on model (#4498)
* feat: set max token limits for better user experience

* fix: use OPEN_AI_CHAT_MODELS max limits

* fix: use the old default of 8000

* fix: formatting so isort/black checks pass

* fix: avoid circular dependencies

* fix: use better to avoid circular imports

* feat: introduce soft limits and use them

* fix: circular import issue and missing field

* fix: move import to avoid overriding doc comment

* feat: DRY things up and set token limit for fast llm models too

* tests: make linter tests happy

* test: use the max token limits in config.py test

* fix: remove fast token limit from config

* feat: remove smart token limit from config

* fix: remove unused soft_token_limit var

* fix: remove unneeded tests, settings aren't in config anymore

---------

Co-authored-by: k-boikov <64261260+k-boikov@users.noreply.github.com>
Co-authored-by: Reinier van der Leer <github@pwuts.nl>
2023-06-07 10:16:53 +02:00
Nicholas Tindle dae58f8167
Update .gitignore (#4610) 2023-06-07 01:46:09 -05:00
Marc Bornträger c9f1f050af
feat: log new-line so user can differentiate sections better in console (#1569)
Co-authored-by: Nicholas Tindle <nick@ntindle.com>
Co-authored-by: Nicholas Tindle <nicktindle@outlook.com>
2023-06-07 00:32:43 -05:00
Robin Richtsfeld 624af3945c
Update .gitignore (#882)
Co-authored-by: Nicholas Tindle <nick@ntindle.com>
2023-06-07 00:12:12 -05:00
Jan 463dc54733
Clean up apt cache in docker build (#2821)
* Dockerfile: reduce layer bloat

* Re-separate layers

---------

Co-authored-by: Reinier van der Leer <github@pwuts.nl>
2023-06-07 03:14:47 +02:00
Erik Peterson fdc6e12945
Improve logic and error messages for file reading and writing with Python code (#4567)
* Fix issues with file reading and writing with Python code

* Change error message, use Workspace.get_path

---------

Co-authored-by: Reinier van der Leer <github@pwuts.nl>
2023-06-07 02:54:02 +02:00