This pull request aims to enhance the organization, readability, and understanding of the .env.template file for users when they modify the settings. The changes include organizing the file in a tree-like structure with appropriate comments, providing clear guidance for users about the purpose of each variable, their possible values, and default settings when applicable.
As a user with no prior knowledge of best practices of contributing to a project / .env.template file documentation, I took the liberty to make changes to the file based on what I would have liked to have seen when I first encountered it. My goal was to include every configurable option for ease of use and better understanding of how the code works.
The key improvements made in this pull request are:
1. Grouping related variables under appropriate headers for better organization and ease of navigation.
2. Adding informative comments for each variable to help users understand their purpose and possible values.
3. Including default values in the comments to inform users of the consequences of not providing a specific value for a variable, allowing them to make
informed decisions when configuring the application.
4. Formatting the file consistently for better readability.
These changes will enhance user experience by simplifying the configuration process and reducing potential confusion. Users can quickly and easily configure the application without having to search through the code to determine default values or understand the relationship between various settings. Additionally, well-organized code and documentation can lead to fewer issues and misunderstandings, saving time for both users and maintainers of the project.
Please review these changes and let me know if you have any questions or suggestions for further improvement so I can make any necessary adjustments.
I added two new config parameters:
- browse_chunk_max_length: define the max_length of a chunk being sent to the memory and to FAST_LLM_MODEL for summarizing
- browse_summary_max_token: define the max_token passed to the model use for summary creation. Changing this can help with complex subject, allowing the agent to be more verbose in its attemps to summarize the chunk and the chunks summary.
I've also edited the way the user_agent is handle.
updated README.md to explain new config
added Azure yaml loader to config class
centralized model retrieval into config class
this commit effectively combines and replaces #700 and #580
This pull request adds functionality to the project to allow for a choice between the original Google search method and the Google Custom Search API. The google_search method uses the original method of scraping the HTML from the search results page, using googlesearch-python, while the google_official_search method uses the Google Custom Search API to retrieve search results.
How to test:
To test the functionality, ensure that you have valid API keys and search engine IDs for both the Google search method and the Google Custom Search API. You can set these values in your environment variables as described in the README.md file.
Additional Notes:
This pull request only adds functionality and makes improvements to existing code. No new features or major changes have been introduced.
- Removed `keys.py`.
- Added `.env.template`.
- Added `.env` to `.gitignore`.
- Updated various files that imported `keys` to use `os.getenv` instead.
- Updated `requirements.txt` dependencies.
- Updated README.md with instructions on setting up environment variables.
This change improves security, flexibility, and makes it easier to use Auto-GPT in notebooks. Environment variables are stored in `.env` and loaded via `load_dotenv()` in `scripts/main.py`.