* Added LangChain integration
* Fixed issue created by git checkin process
* Added ':' to characters to remove from end of file path
* Tested initial migration to LangChain, removed comments and logging used for debugging
* Tested initial migration to LangChain, removed comments and logging used for debugging
* Converted camelCase to snake_case
* Turns out we need the exception handling
* Testing Hugging Face Integrations via LangChain
* Added LangChain loadable models
* Renames "qa" prompt to "clarify", since it's used in the "clarify" step, asking for clarification
* Fixed loading model yaml files
* Fixed streaming
* Added modeldir cli option
* Fixed typing
* Fixed interaction with token logging
* Fix spelling + dependency issues + typing
* Fix spelling + tests
* Removed unneeded logging which caused test to fail
* Cleaned up code
* Incorporated feedback
- deleted unnecessary functions & logger.info
- used LangChain ChatLLM instead of LLM to naturally communicate with gpt-4
- deleted loading model from yaml file, as LC doesn't offer this for ChatModels
* Update gpt_engineer/steps.py
Co-authored-by: Anton Osika <anton.osika@gmail.com>
* Incorporated feedback
- Fixed failing test
- Removed parsing complexity by using # type: ignore
- Replace every ocurence of ai.last_message_content with its content
* Fixed test
* Update gpt_engineer/steps.py
---------
Co-authored-by: H <holden.robbins@gmail.com>
Co-authored-by: Anton Osika <anton.osika@gmail.com>
* Implemented logging token usage
Token usage is now tracked and logged into memory/logs/token_usage
* Step names are now inferred from function name
* Incorporated Anton's feedback
- Made LogUsage a dataclass
- For token logging, step name is now inferred via inspect module
* Formatted (black/ruff)
* Update gpt_engineer/ai.py
Co-authored-by: Anton Osika <anton.osika@gmail.com>
* formatting
---------
Co-authored-by: Anton Osika <anton.osika@gmail.com>
* 'main' of github.com:AntonOsika/gpt-engineer:
Mark test as failed because it requires OpenAI API access currently
`black`
Create test_ai.py
fix to_files
execute_workspace -> gen_entrypoint; execute_entrypoint
Ignore my-new-project/
Added CODE_OF_CONDUCT.md to the .github directory (#147)
make pre commit pass in the whole codebase (#149)
Create ci.yaml
Fix linting
Add support for directory paths in filenames and improve code splitting - Enforce an explicit markdown code block format - Add a token to split the output to clearly detect when the code blocks start - Save all non-code output to a `README.md` file - Update RegEx to extract and strip text more reliably and clean up the output - Update the identify prompts appropriately
Enhance philosophy to include supporting documents - Create instructions for running/compiling the project - Create any package manager files
Generate instructions for all platforms - Update prompt to create instructions for all 3 major OS platforms - Fix small typo
Add support for directory creation and binary files - Use the `Path` module instead of `os` - Add ability to create any amount of missing directories for a given file - Add ability to save both text and binary files to save images (or other file types) later
Add cleanup & move `projects` to their own directory - Add optional argument to clean and delete the working directories of the project before running the prompt - Add `.gitignore` entry to ignore all possible projects - Update readme