* made quickstart to openai or memgpt the default option when the user doesn't have a config set
* modified formatting + message styles
* revised quickstart guides in docs to talk about quickstart command
* make message consistent
---------
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
* allow entering custom model name when using openai/azure
* pull models from endpoint
* added/tested vllm and azure
* no print
* make red
* make the endpoint question give you an opportunity to enter your openai api key again in case you made a mitake / want to swap it out
* add cascading workflow for openai+azure model listings
* patched bug w/ azure listing
* for openai, check for key and if missing allow user to pass it, for azure, throw error if the key isn't present
* correct prior checking of azure to be more strict, added similar checks at the embedding endpoint config stage
* forgot to override value in config before saving
* clean up the valuerrors from missing keys so that no stacktrace gets printed, make success text green to match others
* Revert "Revert "nonfunctional 404 quickstart command w/ some other typo corrections""
This reverts commit 5dbdf31f1ce939843ff97e649554d8bc0556a834.
* Revert "Revert "added example config file""
This reverts commit 72a58f6de31f3ff71847bbaf083a91182469f9af.
* tested and working
* added and tested openai quickstart, added fallback if internet 404's to pull from local copy
* typo
* updated openai key input message to include html link
* renamed --type to --backend, added --latest flag which fetches from online default is to pull from local file
* fixed links
* added memgpt server command
* added the option to specify a port (rest default 8283, ws default 8282)
* fixed import in test
* added agent saving on shutdown
* added basic locking mechanism (assumes only one server.py is running at the same time)
* remove 'STOP' from buffer when converting to list for the non-streaming POST resposne
* removed duplicate on_event (redundant to lifespan)
* added GET agents/memory route
* added GET agent config
* added GET server config
* added PUT route for modifying agent core memory
* refactored to put server loop in separate function called via main
* Fix bug where embeddings endpoint was getting set to deployment, upgraded pinned llama-index to use new version that has azure endpoint
* updated documentation
* added memgpt example for openai
* change wording to match configure
* patched bugs in autogen agent example, updated autogen agent creation to follow agentconfig paradigm
* more fixes
* black
* fix bug in autoreply
* black
* pass default autoreply through to the memgpt autogen conversibleagent subclass so that it doesn't leave empty messages which can trigger errors in local llm backends like lmstudio
* init vllm (not tested), uses POST API not openai wrapper
* add to cli config list
* working vllm endpoint
* add model configuration for vllm
---------
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
* updated local llm documentation
* updated cli flags to be consistent with documentation
* added preset documentation
* update test to use new arg
* update test to use new arg
* mark depricated API section
* CLI bug fixes for azure
* check azure before running
* Update README.md
* Update README.md
* bug fix with persona loading
* remove print
* make errors for cli flags more clear
* format
* fix imports
* fix imports
* add prints
* update lock
* update config fields
* cleanup config loading
* commit
* remove asserts
* refactor configure
* put into different functions
* add embedding default
* pass in config
* fixes
* allow overriding openai embedding endpoint
* black
* trying to patch tests (some circular import errors)
* update flags and docs
* patched support for local llms using endpoint and endpoint type passed via configs, not env vars
* missing files
* fix naming
* fix import
* fix two runtime errors
* patch ollama typo, move ollama model question pre-wrapper, modify question phrasing to include link to readthedocs, also have a default ollama model that has a tag included
* disable debug messages
* made error message for failed load more informative
* don't print dynamic linking function warning unless --debug
* updated tests to work with new cli workflow (disabled openai config test for now)
* added skips for tests when vars are missing
* update bad arg
* revise test to soft pass on empty string too
* don't run configure twice
* extend timeout (try to pass against nltk download)
* update defaults
* typo with endpoint type default
* patch runtime errors for when model is None
* catching another case of 'x in model' when model is None (preemptively)
* allow overrides to local llm related config params
* made model wrapper selection from a list vs raw input
* update test for select instead of input
* Fixed bug in endpoint when using local->openai selection, also added validation loop to manual endpoint entry
* updated error messages to be more informative with links to readthedocs
* add back gpt3.5-turbo
---------
Co-authored-by: cpacker <packercharles@gmail.com>
* partial
* working schema builder, tested that it matches the hand-written schemas
* correct another schema diff
* refactor
* basic working test
* refactored preset creation to use yaml files
* added docstring-parser
* add code for dynamic function linking in agent loading
* pretty schema diff printer
* support pulling from ~/.memgpt/functions/*.py
* clean
* allow looking for system prompts in ~/.memgpt/system_prompts
* create ~/.memgpt/system_prompts if it doesn't exist
* pull presets from ~/.memgpt/presets in addition to examples folder
* add support for loading agent configs that have additional keys
---------
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
* stripped LLM_MAX_TOKENS constant, instead it's a dictionary, and context_window is set via the config (defaults to 8k)
* pass context window in the calls to local llm APIs
* safety check
* remove dead imports
* context_length -> context_window
* add default for agent.load
* in configure, ask for the model context window if not specified via dictionary
* fix default, also make message about OPENAI_API_BASE missing more informative
* make openai default embedding if openai is default llm
* make openai on top of list
* typo
* also make local the default for embeddings if you're using localllm instead of the locallm endpoint
* provide --context_window flag to memgpt run
* fix runtime error
* stray comments
* stray comment
* Remove AsyncAgent and async from cli
Refactor agent.py memory.py
Refactor interface.py
Refactor main.py
Refactor openai_tools.py
Refactor cli/cli.py
stray asyncs
save
make legacy embeddings not use async
Refactor presets
Remove deleted function from import
* remove stray prints
* typo
* another stray print
* patch test
---------
Co-authored-by: cpacker <packercharles@gmail.com>