Search code examples
langchainpy-langchain

Device not exist error in generating vectordb using langchain Chroma


I am new to langchain and following a tutorial code as below

from langchain.vectorstores import Chroma
from langchain.embeddings.openai import OpenAIEmbeddings
persist_directory = "C:/Users/shang/Documents/test/"
embedding = OpenAIEmbeddings()
vectordb = Chroma(persist_directory, embedding_function=embedding)

it kept prompt error. Did I miss anything here? Thanks

---------------------------------------------------------------------------
OSError                                   Traceback (most recent call last)
g:\My Drive\DataScience\LLM\LongChain\all_inclusive.ipynb Cell 5 line 5
      3 persist_directory = 'C:/Users/shang/Documents/test/'
      4 embedding = OpenAIEmbeddings()
----> 5 vectordb = Chroma(persist_directory, embedding_function=embedding)

File ~\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\langchain\vectorstores\chroma.py:81, in Chroma.__init__(self, collection_name, embedding_function, persist_directory, client_settings, collection_metadata, client, relevance_score_fn)
     79 """Initialize with a Chroma client."""
     80 try:
---> 81     import chromadb
     82     import chromadb.config
     83 except ImportError:

File ~\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\chromadb\__init__.py:3
      1 from typing import Dict, Optional
      2 import logging
----> 3 from chromadb.api.client import Client as ClientCreator
      4 from chromadb.api.client import AdminClient as AdminClientCreator
      5 import chromadb.config

File ~\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages\chromadb\api\client.py:31
     27 from chromadb.types import Database, Tenant, Where, WhereDocument
     28 import chromadb.utils.embedding_functions as ef
---> 31 class SharedSystemClient:
...
   1011     os.stat() does.
   1012     """
-> 1013     return os.stat(self, follow_symlinks=follow_symlinks)

OSError: [WinError 433] A device which does not exist was specified: '.env'

Solution

  • I dont know what happened to you. But you can try this:

    vectordb = Chroma(persist_directory=persist_directory, embedding_function=embedding)