Commit Graph

63 Commits

Author SHA1 Message Date
tombedor
1097eee7ab fix: configure black (#1072) 2024-02-29 15:19:08 -08:00
Sarah Wooders
4cdd9ee01f feat: refactor loading and attaching data sources, and upgrade to llama-index==0.10.6 (#1016) 2024-02-18 16:57:01 -08:00
Sarah Wooders
4039763de5 feat: Store embeddings padded to size 4096 to allow DB storage of varying size embeddings (#852)
Co-authored-by: cpacker <packercharles@gmail.com>
2024-01-19 16:03:13 -08:00
Charles Packer
da5a8cdbfe refactor: remove User LLM/embed. defaults, add credentials file, add authentication option for custom LLM backends (#835) 2024-01-18 16:11:35 -08:00
Sarah Wooders
2f7ccb1807 feat: Get in-context Message.id values from server (#851) 2024-01-18 12:42:55 -08:00
Tom Bedor
4240012b7b fix: fix typo in memory.py 2024-01-15 13:54:13 -08:00
Sarah Wooders
e4a18c374e passing tests 2024-01-10 20:20:16 -08:00
Sarah Wooders
2f84caa817 fix archival reference 2024-01-10 19:47:39 -08:00
Sarah Wooders
841d47c462 Remove usage of agent_config from agent.py 2024-01-09 11:22:39 -08:00
Sarah Wooders
54fa07da7a refactor!: Migrate users + agent information into storage connectors (#785)
Co-authored-by: cpacker <packercharles@gmail.com>
2024-01-08 15:59:49 -08:00
Sarah Wooders
5de2557738 Fix bug with supporting paginated search for recall memory 2024-01-03 18:32:13 -08:00
Sarah Wooders
17506b7e90 Change Message data type to use tool format and create tool_call_id field 2024-01-03 18:03:11 -08:00
Charles Packer
b487366f21 Merge branch 'main' into cherry-pick-storage-refactor 2023-12-30 21:38:58 -08:00
Charles Packer
02a8a42cb0 fix: patch TEI error in load (#725)
* patch TEI error in load (now get different error)

* more hiding of MOCKLLM

* fix embedding dim

* refactored bandaid patches into custom embedding class return object patch
2023-12-27 22:09:29 -08:00
Sarah Wooders
5b991988f6 Deprecate list_loaded_data for listing sources, and use metadata DB instead 2023-12-26 18:47:16 +04:00
Sarah Wooders
3f8b9063a1 Run black formatter 2023-12-26 17:53:57 +04:00
Sarah Wooders
0c2bf05406 Bugfixes for get_all function and code cleanup to match main 2023-12-26 17:50:49 +04:00
Sarah Wooders
11096b20a4 Set get_all limit to None by default and add postgres to archival memory tests 2023-12-26 17:07:54 +04:00
Sarah Wooders
b64f3aca4b Support metadata table via storage connectors for data sources 2023-12-26 17:06:58 +04:00
Sarah Wooders
223e196da8 Support recall and archival memory for postgres
working test
2023-12-26 17:05:24 +04:00
Sarah Wooders
408df89c9c Add in memory storage connector implementation for refactored storage 2023-12-26 17:05:24 +04:00
Sarah Wooders
d041455375 Add data_types.py file for standard data types 2023-12-26 17:05:12 +04:00
Sarah Wooders
234a444090 Define refactored storage table types (archival, recall, documents,
users, agents)
2023-12-26 17:04:11 +04:00
Charles Packer
3ec8bb1465 fix: misc fixes (#700)
* add folder generation

* disable default temp until more testing is done

* apply embedding payload patch to search, add input checking for better runtime error messages

* streamlined memory pressure warning now that heartbeats get forced
2023-12-25 01:29:13 -08:00
Charles Packer
34e36ad8ef moved configs for hosted to https, patched bug in embedding creation (#685) 2023-12-23 11:40:07 -08:00
Charles Packer
4f23934e04 feat: Add new wrapper defaults (#656) 2023-12-21 17:05:38 +04:00
Charles Packer
52d4befdba fix runtime error (#586) 2023-12-05 23:01:37 -08:00
Sarah Wooders
6a155dfc90 Chroma storage integration (#285) 2023-12-05 17:49:00 -08:00
Sarah Wooders
2d23370930 Removing dead code + legacy commands (#536) 2023-11-30 13:37:11 -08:00
Sarah Wooders
b05b09439f Add user field for vLLM endpoint (#531) 2023-11-29 12:30:42 -08:00
Charles Packer
f4a1455c24 Clean memory error messages (#523)
* Raise a custom keyerror instead of basic keyerror to clarify issue to LLM processor

* remove self value from error message passed to LLM processor

* simplify error message propogated to llm processor
2023-11-27 16:41:42 -08:00
Sarah Wooders
ed356dd82c Add support for HuggingFace Text Embedding Inference endpoint for embeddings (#524) 2023-11-27 16:28:49 -08:00
Charles Packer
04e6d548c3 extra arg being passed causing a runtime error (#517) 2023-11-27 11:36:26 -08:00
Charles Packer
9989fd9a52 Fix #487 (summarize call uses OpenAI even with local LLM config) (#488)
* use new chatcompletion function that takes agent config inside of summarize

* patch issue with model now missing
2023-11-19 14:54:12 -08:00
sahusiddharth
351f8094b5 Docs: Fix typos (#477) 2023-11-17 15:12:14 -08:00
Charles Packer
624650c13d patch #428 (#433) 2023-11-12 22:59:53 -08:00
Charles Packer
dab47001a9 Fix max tokens constant (#374)
* 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
2023-11-09 17:59:03 -08:00
Vivian Fang
11326ec24e Remove AsyncAgent and async from cli (#400)
* 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>
2023-11-09 14:51:12 -08:00
Sarah Wooders
cef4d8489d Add support for larger archival memory stores (#359) 2023-11-09 09:09:57 -08:00
Sarah Wooders
fb29290dd4 Dependency management (#337)
* Divides dependencies into `pip install pymemgpt[legacy,local,postgres,dev]`. 
* Update docs
2023-11-06 19:45:44 -08:00
Charles Packer
caba2f468c Create docs pages (#328)
* Create docs  (#323)

* Create .readthedocs.yaml

* Update mkdocs.yml

* update

* revise

* syntax

* syntax

* syntax

* syntax

* revise

* revise

* spacing

* Docs (#327)

* add stuff

* patch homepage

* more docs

* updated

* updated

* refresh

* refresh

* refresh

* update

* refresh

* refresh

* refresh

* refresh

* missing file

* refresh

* refresh

* refresh

* refresh

* fix black

* refresh

* refresh

* refresh

* refresh

* add readme for just the docs

* Update README.md

* add more data loading docs

* cleanup data sources

* refresh

* revised

* add search

* make prettier

* revised

* updated

* refresh

* favi

* updated

---------

Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
2023-11-06 12:38:49 -08:00
Charles Packer
cc1ce0ce33 Remove embeddings as argument in archival_memory.insert (#284) 2023-11-05 12:48:22 -08:00
Vivian Fang
1871823c99 hotfix DummyArchivalMemoryWithFaiss 2023-11-03 16:41:06 -07:00
Sarah Wooders
b9ce763fda VectorDB support (pgvector) for archival memory (#226) 2023-11-03 16:19:15 -07:00
Charles Packer
25dd225d04 strip '/' and use osp.join (Windows support) (#283)
* strip '/' and use osp.join

* grepped for MEMGPT_DIR, found more places to replace '/'

* typo

* grep pass over filesep

---------

Co-authored-by: Vivian Fang <hi@vivi.sh>
2023-11-03 13:54:29 -07:00
Charles Packer
fde0087a19 Patch summarize when running with local llms (#213)
* trying to patch summarize when running with local llms

* moved token magic numbers to constants, made special localllm exception class (TODO catch these for retry), fix summarize bug where it exits early if empty list

* missing file

* raise an exception on no-op summary

* changed summarization logic to walk forwards in list until fraction of tokens in buffer is reached

* added same diff to sync agent

* reverted default max tokens to 8k, cleanup + more error wrapping for better error messages that get caught on retry

* patch for web UI context limit error propogation, using best guess for what the web UI error message is

* add webui token length exception

* remove print

* make no wrapper warning only pop up once

* cleanup

* Add errors to other wrappers

---------

Co-authored-by: Vivian Fang <hi@vivi.sh>
2023-11-02 23:44:02 -07:00
Robin Goetz
30bb866142 fix: LocalArchivalMemory prints ref_doc_info on if not using EmptyIndex (#240)
Currently, if you run the /memory command the application breaks if the LocalArchivalMemory
has no existing archival storage and defaults to the EmptyIndex. This is caused by EmptyIndex
not having a ref_doc_info implementation and throwing an Exception when that is used to print
the memory information to the console. This hot fix simply makes sure that we do not try to
use the function if using EmptyIndex and instead prints a message to the console indicating
an EmptyIndex is used.
2023-11-01 18:45:04 -07:00
Vivian Fang
79b72fd7ae await async_get_embeddings_with_backoff (#239) 2023-11-01 01:43:17 -07:00
Charles Packer
250252f105 len needs to be implemented in all memory classes (#236)
* len needs to be implemented in all memory classes so that the pretty print of memory shows statistics

* stub
2023-11-01 01:02:25 -07:00
Vivian Fang
0ac2ac10db Fix conversation_date_search async bug (#215)
* Fix conversation_date_search async bug

* Also catch TypeError
2023-10-31 00:35:09 -07:00