chatgpt-retrieval-plugin icon indicating copy to clipboard operation
chatgpt-retrieval-plugin copied to clipboard

Quickstart: DATASTORE Environment Variable Needs Better Documentation

Open dbigham opened this issue 1 year ago • 2 comments

The Quickstart doesn't explain what values DATASTORE should have.

I did correctly infer that it should be something like "Redis", but then got:

PS C:\users\danie\chatgpt-retrieval-plugin> poetry run start
INFO:     Will watch for changes in these directories: ['C:\\Users\\danie\\chatgpt-retrieval-plugin']
INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
INFO:     Started reloader process [25452] using StatReload
INFO:     Started server process [23196]
INFO:     Waiting for application startup.
ERROR:    Traceback (most recent call last):
  File "C:\Users\danie\AppData\Local\pypoetry\Cache\virtualenvs\chatgpt-retrieval-plugin-GLI-4pa_-py3.10\lib\site-packages\starlette\routing.py", line 671, in lifespan
    async with self.lifespan_context(app):
  File "C:\Users\danie\AppData\Local\pypoetry\Cache\virtualenvs\chatgpt-retrieval-plugin-GLI-4pa_-py3.10\lib\site-packages\starlette\routing.py", line 566, in __aenter__
    await self._router.startup()
  File "C:\Users\danie\AppData\Local\pypoetry\Cache\virtualenvs\chatgpt-retrieval-plugin-GLI-4pa_-py3.10\lib\site-packages\starlette\routing.py", line 648, in startup
    await handler()
  File "C:\Users\danie\chatgpt-retrieval-plugin\server\main.py", line 151, in startup
    datastore = await get_datastore()
  File "C:\Users\danie\chatgpt-retrieval-plugin\datastore\factory.py", line 39, in get_datastore
    raise ValueError(f"Unsupported vector database: {datastore}")
ValueError: Unsupported vector database: Redis

I then tried "redis", and that seemed to work, but I feel there should be a comment to provide a bit more explanation to people what value should be used here.

dbigham avatar Apr 08 '23 01:04 dbigham

About to update this to the following:

ValueError: Unsupported vector database: Redis. Try one of the following: ['redis', 'llama', 'milvus', 'pinecone', 'weaviate', 'zilliz', 'qdrant']

Better?

cc @isafulf

tylerhutcherson avatar Apr 12 '23 18:04 tylerhutcherson

It would also be ideal if the quickstart mentioned the possible values to use, or had a clickable link (etc.) for people to learn more.

dbigham avatar Apr 12 '23 20:04 dbigham

@tylerhutcherson I still get the same error: But this is on the dev version, poetry run dev

`

poetry run dev INFO: Will watch for changes in these directories: ['C:\Users\aalshehri\Downloads\chatgpt-retrieval-plugin-main\chatgpt-retrieval-plugin-main'] INFO: Uvicorn running on http://localhost:3333 (Press CTRL+C to quit) INFO: Started reloader process [14184] using StatReload INFO: Started server process [28028] INFO: Waiting for application startup. ERROR: Traceback (most recent call last): File "C:\Users\aalshehri\AppData\Local\pypoetry\Cache\virtualenvs\chatgpt-retrieval-plugin-MEpzn47u-py3.10\lib\site-packages\starlette\routing.py", line 671, in lifespan async with self.lifespan_context(app): File "C:\Users\aalshehri\AppData\Local\pypoetry\Cache\virtualenvs\chatgpt-retrieval-plugin-MEpzn47u-py3.10\lib\site-packages\starlette\routing.py", line 566, in aenter await self._router.startup() File "C:\Users\aalshehri\AppData\Local\pypoetry\Cache\virtualenvs\chatgpt-retrieval-plugin-MEpzn47u-py3.10\lib\site-packages\starlette\routing.py", line 648, in startup await handler() File "C:\Users\aalshehri\Downloads\chatgpt-retrieval-plugin-main\chatgpt-retrieval-plugin-main\local-server\main.py", line 141, in startup datastore = await get_datastore() File "C:\Users\aalshehri\Downloads\chatgpt-retrieval-plugin-main\chatgpt-retrieval-plugin-main\datastore\factory.py", line 39, in get_datastore raise ValueError(f"Unsupported vector database: {datastore}") ValueError: Unsupported vector database: 'weaviate'

ERROR: Application startup failed. Exiting. INFO: Stopping reloader process [14184]

`

Ease78 avatar Apr 26 '23 12:04 Ease78

I actually had this problem slightly, but did see somewhere that the db names were listed out as simple strings, so "redis" would be suitable. But I do agree it could be better placed around the table / section for env vars.

JordanTreDaniel avatar May 01 '23 16:05 JordanTreDaniel