You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,12 +20,12 @@ The [ChatGPT](https://openai.com/blog/chatgpt)-powered swiss army knife for the
20
20
## Getting Started
21
21
22
22
Pre-requisite:
23
-
- You'll need to create an [OpenAI](https://openai.com/blog/openai-api) account or request early access from [Anthropic](https://www.anthropic.com/earlyaccess).
23
+
- You'll need to create an [OpenAI](https://openai.com/blog/openai-api) account.
24
24
- Also, create a [Pinecone](https://www.pinecone.io/start) account to use their vector database.
25
25
26
26
1. Run `pip install mindflow`, or you can clone this repo and run `pip install -e path/to/mindflow`.
27
27
2. Run `mf login`:
28
-
- Register with OpenAI or Anthropic to use their models. You can find your OpenAI API key [here](https://platform.openai.com/account/api-keys).
28
+
- Register with OpenAI to use their models. You can find your OpenAI API key [here](https://platform.openai.com/account/api-keys).
29
29
- Register with Pinecone to use their vector database. You can find your Pinecone API key and Environment [here](https://www.pinecone.io/start).
30
30
3. Now, you're ready to start using MindFlow!
31
31
@@ -42,14 +42,14 @@ There are multiple levels to using mindflow's chat feature.
42
42
-`mf chat "explain what a programming language is"`
43
43
- Interact with chatGPT directly just like on the chatGPT website. We also have chat persistence, so it will remember the previous chat messages.
44
44
2. With File Context
45
-
-`mf chat "please summarize what this code does" path/to/code.py`
45
+
-`mf chat path/to/code.py "please summarize what this code does"`
46
46
- You can provide single or multi-file context to chatGPT by passing in any number of files as a separate argument in the `mf chat` call. For sufficiently small files (see: [chatGPT token limits](https://help.openai.com/en/articles/4936856-what-are-tokens-and-how-to-count-them)), this will work and also maintain chat history.
47
47
3. With Directory Context
48
-
-`mf chat "what are these submodules responsible for? path/to/submodule1/ path/to/submodule2/`
48
+
-`mf chat path/to/submodule1/ path/to/submodule2/ "what are these submodules responsible for?"`
49
49
- Providing directories will actually run an indexer over your code subdirectories/files recursively. So it may take a while to fully index everything -- don't worry; we'll warn you if the cost becomes a concern! Right now the warning triggers if the index job costs >$0.50USD.
50
50
4. Custom pre-indexed context
51
51
-`mf index path/to/subdir/file1.txt path/to/file2.txt`
52
-
-`mf chat -s "How do all of my classes relate to one another?" ./`
52
+
-`mf chat -s ./ "How do all of my classes relate to one another?"`
53
53
- If you pre-index your repository, you can narrow the scope for the context provided to the chat. Passing `-s` will skip the auto-indexing, and instead will defer to the currently existing index. This index is generated in the first step `mf index` where only those files/subdirs will be included.
54
54
- This can save you time and money if your repository is significantly large.
55
55
@@ -118,7 +118,7 @@ Make some changes to your branch and stage, and then commit them. Then, run `mf
118
118

119
119
120
120
## How does it work?
121
-
This tool allows you to build an index of text documents and search through them using GPT-based embeddings. The tool takes document paths as input, extracts the text, splits the documents into chunks, summarizes them, and builds a summarization tree. The tool then uses this tree to generate embeddings of the indexed documents and your query and selects the top text chunks based on the cosine similarity between these embeddings. The generated index can be saved to a JSON file for later reuse, making subsequent searches faster and cheaper.
121
+
MindFlow uses state-of-the-art methods for high-throughput segmentation, processing, storage, and retrieval of documents using a recursive hierarchical summarization and embedding technique to store embedding vectors for document chunks and then achieve fast, and high-quality responses to questions and tasks by appending similar document chunks based on the hierarchically embedded text and using them as context for you query. Additionally, chat history will persist if it can fit in the context for queries over indexed documents or for regular chat.
122
122
123
123
## What's next for MindFlow
124
124
In the future, MindFlow plans on becoming an even more integral part of the modern developer's toolkit. We plan on adding the ability to ditch traditional documentation and instead integrate directly with your private documents and communication channels, allowing for a more seamless and intuitive experience. With MindFlow, you can have a true "stream of consciousness" with your code, documentation, and communication channels, making it easier than ever to stay on top of your projects and collaborate with your team. We are excited to continue pushing the boundaries of what's possible with language models and revolutionizing how developers work.
0 commit comments