Commit Graph

46 Commits

Author SHA1 Message Date
Sarah Wooders
f193aa58fa
feat: Add data sources to REST API (#1118) 2024-03-10 14:34:35 -07:00
Charles Packer
ff986ad384
feat: add archival memory GET, POST, DEL to REST API (#1119) 2024-03-09 14:23:36 -08:00
Sarah Wooders
928056815d
fix: bug with storing embedding info in metadata store (#1101) 2024-03-05 22:11:12 -08:00
Charles Packer
dcf746cd91
feat: one time pass of autoflake + add autoflake to dev extras (#1097)
Co-authored-by: tombedor <tombedor@gmail.com>
2024-03-05 16:35:12 -08:00
Robin Goetz
ccecea3b7a
fix: return uuid stored in config (#1092)
Co-authored-by: cpacker <packercharles@gmail.com>
2024-03-05 14:34:51 -08:00
Sarah Wooders
15dbe34dfe
feat: Update REST API routes GET information for agents/humans/personas and store humans/personas in DB (#1074) 2024-03-02 13:07:24 -08:00
Charles Packer
a2133fd13d
feat: tests and bug fixes AgentState.state (#1058) 2024-02-29 20:51:31 -08:00
Sarah Wooders
ce1ce9d06f
feat: Add data loading and attaching to server (#1051) 2024-02-24 19:34:32 -08:00
Sarah Wooders
9ada3ef529
feat: Create RESTClient and Admin client for interacting with server from python (#1033) 2024-02-22 11:16:01 -08:00
Charles Packer
29801ef29b
fix: removed superfluous create_agent calls (#1000) 2024-02-19 10:13:41 -08:00
Sarah Wooders
38c184caf8
feat: refactor loading and attaching data sources, and upgrade to llama-index==0.10.6 (#1016) 2024-02-18 16:57:01 -08:00
Charles Packer
c816280d52
feat: Add API keys to memgpt server REST API (#1014) 2024-02-16 13:14:35 -08:00
Sarah Wooders
c7fbc03e68
refactor: store presets in database via metadata store (#1013) 2024-02-15 18:49:16 -08:00
Sarah Wooders
391e01f279
feat: Partial support for OpenAI-compatible assistant API (#838) 2024-02-13 16:09:20 -08:00
tombedor
1dca90588a
fix: set json loads strict to false (#946) 2024-01-31 15:50:08 -08:00
Charles Packer
6f5da1a5c9
fix: resolve fatal attribute errors in pyright (#917) 2024-01-23 20:33:58 -08:00
Charles Packer
3190edec12
fix: out-of-order user message timestamp (#915) 2024-01-23 15:42:53 -08:00
tombedor
3c9c019640
fix: simplify user config (#904) 2024-01-22 19:25:03 -08:00
Charles Packer
c2ffe3c530
feat: add agent rename and agent delete to server + REST (#882) 2024-01-21 13:26:05 -08:00
starsnatched
aff152061b
feat: Benchmark Command: memgpt benchmark (#816)
Co-authored-by: Starlette <starlette@Starlettes-MacBook-Pro.local>
Co-authored-by: cpacker <packercharles@gmail.com>
2024-01-21 00:57:01 -08:00
Charles Packer
e07168663a
fix: various fixes + make sure to save agent on creation to avoid missing agent_state.state entries (#877) 2024-01-20 17:28:39 -08:00
Robin Goetz
8292f4fe5e
feat: Next iteration of ChatUI (#847)
Co-authored-by: Charles Packer <packercharles@gmail.com>
2024-01-20 16:28:31 -08:00
Charles Packer
e4fab1653e
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
643ae41f4b
feat: Get in-context Message.id values from server (#851) 2024-01-18 12:42:55 -08:00
Charles Packer
d1b1548ba0
refactor: Use Message types inside Agent state (agent.messages), enabling immediate tracking of Message objects (#836)
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
2024-01-17 17:02:56 -08:00
Sarah Wooders
369fe0fa84
fix: Remove usage of config.anon_clientid (#837) 2024-01-16 20:37:58 -08:00
Sarah Wooders
9e21e7e5bc
feat: Cursor-based pagination for storage connectors and server (#830) 2024-01-16 14:45:20 -08:00
Sarah Wooders
6376e4fb3b
feat: Add paginated memory queries (#825)
Co-authored-by: cpacker <packercharles@gmail.com>
2024-01-15 21:21:58 -08:00
cpacker
2ecd60787e various patches related to UUID usernames to make chatui work 2024-01-15 18:09:25 -08:00
cpacker
3f079caaf6 fix: fixed the type hints in server to use uuid, patched tests that used strings as dummy users 2024-01-15 14:01:06 -08:00
cpacker
d1899575e9 fix: add type hints, drop stray User() creation 2024-01-15 13:27:47 -08:00
cpacker
63bc506565 fix: fixed bug on agent list with bad type 2024-01-15 13:15:13 -08:00
cpacker
2dd8a4b416 fix: comment out persistencemanager (deprecated as on main), convert str to UUID before querying 2024-01-15 11:40:27 -08:00
cpacker
f0e22174cc add base user (anonclientid) creation to the init of the server, add missing cast of user_id into User object 2024-01-15 11:31:24 -08:00
Charles Packer
0ac3ed60b5
Merge branch 'main' into goetzrobin-chatui-rebased-on-main 2024-01-15 10:50:18 -08:00
ifsheldon
f88f930354
fix: Turn off all ensure_ascii of json.dumps (#800) 2024-01-11 23:54:35 -08:00
robingotz
d7044c4f14 fix: remove hex usage to generate uuids and iron out inconsistencies with previous backend responses 2024-01-11 20:56:21 +01:00
robingotz
a483f3cbbe fix: return agents instead of agent_names from server's list_agents function 2024-01-11 14:49:46 +01:00
Charles Packer
3984be9b06 feat: another iteration of chat web UI (#648)
* autogenerate openapi file on server startup

* added endpoint for paginated retrieval of in-context agent messages

* missing diff

* added ability to pass system messages via message endpoint

* patched bad depends into queries to fix the param info not showing up in get requests, fixed some bad copy paste
2024-01-11 14:49:44 +01:00
Robin Goetz
62db8fea6a feat: next iteration of chatui (#642)
* feat: add dark mode & make minor UI improvements

added dark mode toggle & picked a color scheme that is closer to the memgpt icons
cleaned up the home page a little bit.

* feat: add thinking indicator & make minor UI improvements

we now show a thinking while the current message is loading.
removed status indicator as we do not work with websockets anymore.
also adjusted some of the chat styles to better fit the new theme.

* feat: add memory viewer and allow memory edit

* chore: build frontend
2024-01-11 14:47:51 +01:00
Sarah Wooders
7195635665 cleanup source loading code 2024-01-09 19:19:18 -08:00
Sarah Wooders
18d33e9557 remove AgentConfig imports 2024-01-09 11:38:46 -08:00
Sarah Wooders
8c06cc4bf7
refactor!: Migrate users + agent information into storage connectors (#785)
Co-authored-by: cpacker <packercharles@gmail.com>
2024-01-08 15:59:49 -08:00
BabellDev
8736d46526
feat: Add MemGPT "Python Client" (#713)
* First commit of memgpt client and some messy test code

* rolled back unnecessary changes to abstract interface; switched client to always use Queueing Interface

* Added missing interface clear() in run_command;  added convenience method for checking if an agent exists, used that in create_agent

* Formatting fixes

* Fixed incorrect naming of get_agent_memory in rest server

* Removed erroneous clear from client save method;  Replaced print statements with appropriate logger calls in server

* Updated readme with client usage instructions

* added tests for Client

* make printing to terminal togglable on queininginterface (should probably refactor this to a logger)

* turn off printing to stdout via interface by default

* allow importing the python client in a similar fashion to openai-python (see https://github.com/openai/openai-python)

* Allowed quickstart on init of client;  updated readme and test_client accordingly

* oops, fixed name of openai_api_key config key

* Fixed small typo

* Fixed broken test by adding memgpt hosted model details to agent config

* silence llamaindex 'LLM is explicitly disabled. Using MockLLM.' on server

* default to openai if user's memgpt directory is empty (first time)

* correct type hint

* updated section on client in readme

* added comment about how MemGPT config != Agent config

* patch unrelated test

* update wording on readme

* patch another unrelated test

* added python client to readme docs

* Changed 'user' to 'human' in example;  Defaulted AgentConfig.model to 'None';  Fixed issue in create_agent (accounting for dict config);  matched test code to example

* Fixed advanced example

* patch test

* patch

---------

Co-authored-by: cpacker <packercharles@gmail.com>
2023-12-30 12:43:46 -08:00
Charles Packer
0ca014948b
added memgpt server command (#611)
* 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
2023-12-13 00:41:40 -08:00
Charles Packer
b83d1c599f
API server refactor + REST API (#593)
* init server refactor

* refactored websockets server/client code to use internal server API

* added intentional fail on test

* update workflow to try and get test to pass remotely

* refactor to put websocket code in a separate subdirectory

* added fastapi rest server

* add error handling

* modified interface return style

* disabled certain tests on remote

* added SSE response option for user_message

* fix ws interface test

* fallback for oai key

* add soft fail for test when localhost is borked

* add step_yield for all server related interfaces

* extra catch

* update toml + lock with server add-ons (add uvicorn+fastapi, move websockets to server extra)

* regen lock file

* added pytest-asyncio as an extra in dev

* add pydantic to deps

* renamed CreateConfig to CreateAgentConfig

* fixed POST request for creating agent + tested it
2023-12-11 15:08:42 -08:00