Spaces:
No application file
No application file
--- | |
title: "App" | |
--- | |
Create a RAG app object on Embedchain. This is the main entrypoint for a developer to interact with Embedchain APIs. An app configures the llm, vector database, embedding model, and retrieval strategy of your choice. | |
### Attributes | |
<ParamField path="local_id" type="str"> | |
App ID | |
</ParamField> | |
<ParamField path="name" type="str" optional> | |
Name of the app | |
</ParamField> | |
<ParamField path="config" type="BaseConfig"> | |
Configuration of the app | |
</ParamField> | |
<ParamField path="llm" type="BaseLlm"> | |
Configured LLM for the RAG app | |
</ParamField> | |
<ParamField path="db" type="BaseVectorDB"> | |
Configured vector database for the RAG app | |
</ParamField> | |
<ParamField path="embedding_model" type="BaseEmbedder"> | |
Configured embedding model for the RAG app | |
</ParamField> | |
<ParamField path="chunker" type="ChunkerConfig"> | |
Chunker configuration | |
</ParamField> | |
<ParamField path="client" type="Client" optional> | |
Client object (used to deploy an app to Embedchain platform) | |
</ParamField> | |
<ParamField path="logger" type="logging.Logger"> | |
Logger object | |
</ParamField> | |
## Usage | |
You can create an app instance using the following methods: | |
### Default setting | |
```python Code Example | |
from embedchain import App | |
app = App() | |
``` | |
### Python Dict | |
```python Code Example | |
from embedchain import App | |
config_dict = { | |
'llm': { | |
'provider': 'gpt4all', | |
'config': { | |
'model': 'orca-mini-3b-gguf2-q4_0.gguf', | |
'temperature': 0.5, | |
'max_tokens': 1000, | |
'top_p': 1, | |
'stream': False | |
} | |
}, | |
'embedder': { | |
'provider': 'gpt4all' | |
} | |
} | |
# load llm configuration from config dict | |
app = App.from_config(config=config_dict) | |
``` | |
### YAML Config | |
<CodeGroup> | |
```python main.py | |
from embedchain import App | |
# load llm configuration from config.yaml file | |
app = App.from_config(config_path="config.yaml") | |
``` | |
```yaml config.yaml | |
llm: | |
provider: gpt4all | |
config: | |
model: 'orca-mini-3b-gguf2-q4_0.gguf' | |
temperature: 0.5 | |
max_tokens: 1000 | |
top_p: 1 | |
stream: false | |
embedder: | |
provider: gpt4all | |
``` | |
</CodeGroup> | |
### JSON Config | |
<CodeGroup> | |
```python main.py | |
from embedchain import App | |
# load llm configuration from config.json file | |
app = App.from_config(config_path="config.json") | |
``` | |
```json config.json | |
{ | |
"llm": { | |
"provider": "gpt4all", | |
"config": { | |
"model": "orca-mini-3b-gguf2-q4_0.gguf", | |
"temperature": 0.5, | |
"max_tokens": 1000, | |
"top_p": 1, | |
"stream": false | |
} | |
}, | |
"embedder": { | |
"provider": "gpt4all" | |
} | |
} | |
``` | |
</CodeGroup> | |