aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 96795fd58504d49503220879af261461835f1373 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# NAI
---

Néo AI, a personnal assistant using LLM.
A TUI interface for local llama.cpp LLM, in the future more functionnality will
be added to this AI.

## Usage

### Dependencies

This project is written in Rust, so you will need `rustc` and `cargo`.  
Moreover, you will need a LLM API, currently only works with local 
[ollama](https://github.com/ollama/ollama) API. 
  
### Building & Running

To build and run this project you will need to install all the dependencies used:
  
```bash
cargo install
```
  
Once that is done, just 
```bash
cargo run
``` 
and there you go !

## Screenshots

![Screenshot of the ui](screenshots/ui.png)

## Feature

- Conversation are saved inside files in JSON in this folder `conv/`, and can be reused on others LLM.
- In normal mode, conversation can be resumed by the LLM into bullet point list.
- LLM can be configured thanks to configuration files in `config/`
- Requests are routed thanks to the LLM to other expert LLM. Code questions are send to a code expert, wikipedia questions are send to a system which provide better factual response.

## TODO

- Color change if it's an user or the LLM
- Async request to the LLM API
- Start the real fun

## Inspiration and reason

Why in Rust ?

Because I wanted to learn Rust, and the language is fast and powerful.


- [WilmerAI](https://github.com/SomeOddCodeGuy/WilmerAI/) a system where all the inferences are routed to others expert LLM.
ArKa projects. All rights to me, and your next child right arm.