Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(gen-apis): add llamaindex #4521

Merged
merged 7 commits into from
Mar 4, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ The following table compares AI tools and libraries supported by Scaleway's Gene
| Tool/Library | Description | Use cases | Integration effort |
| --- | --- | --- | --- |
| [OpenAI client](#openai-client-libraries) | Popular AI library for natural language processing | Text generation, language translation, text summarization | Low |
| [LangChain](#langchain-rag-and-llm-applications) | Library for building AI applications | Inference, embeddings, document indexing and retrieval | Medium |
| [LangChain](#langchain-rag-and-llm-applications) | Library for building AI applications leveraging RAG | Inference, embeddings, document indexing and retrieval | Medium |
| [LlamaIndex](#llamaIndex-advanced-rag-applications) | Library for building advanced AI RAG applications | Knowledge graph building, document retrieval, data indexing | Medium |
| [Continue Dev](#continue-dev-ai-coding-assistance) | Library for AI-powered coding assistance | Code completion, code review | Low |
| [Chatbox AI](#chatbox-ai) | Desktop client for generative APIs, available on Windows, Mac, Linux | AI copilot for documents, images, or code| Low |
| [cURL/Python](#custom-http-integrations) | Direct HTTP API calls for custom integrations | Custom applications, data processing | High |
Expand Down Expand Up @@ -72,6 +73,48 @@ LangChain is a popular library for building AI applications. Scaleway's Generati
Refer to our dedicated documentation for [implementing Retrieval-Augmented Generation (RAG) with LangChain and Scaleway Generative APIs](/tutorials/how-to-implement-rag-generativeapis/)
</Message>

## LlamaIndex (advanced RAG applications)

LlamaIndex is an open-source framework for building Large Language Models (LLMs) based applications, especially optimizing RAG (Retrieval Augmented Generation) pipelines.
1. Install the required dependencies to use the LlamaIndex framework with Scaleway's Generative APIs:
```bash
pip install llama-index-llms-openai-like
```

2. Create a file `main.py` and add the following code to it to configure the `OpenAILike` client and your secret key:
```python
from llama_index.llms.openai_like import OpenAILike
from llama_index.core.llms import ChatMessage

llm = OpenAILike(
model="llama-3.1-8b-instruct",
api_key="<API secret key>",
api_base="https://api.scaleway.ai/v1",
max_tokens=512,
temperature=0.7,
top_p=1,
presence_penalty=0,
)
```
<Message type="tip">
Make sure to replace `<API secret key>` with your actual API key.
</Message>

3. You can then interact with the LLM by sending messages to the model with the following code:
```python
response = llm.chat([ChatMessage("Could you tell me about Scaleway please ?")])
print(response)
```

4. Finally, run `main.py`:
```python
python main.py
```
The LLM response should display an answer:
```bash
Generally, Scaleway is a reliable and secure cloud provider that offers a range of services for businesses and developers.
```

### Javascript (Typescript)

To perform chat conversations with Langchain, first install `langchain` and `@langchain/openai` packages using your node package manager.
Expand Down Expand Up @@ -123,6 +166,7 @@ To perform chat conversations with Langchain, first install `langchain` and `@la

Note that other Langchain objects from OpenAI client library are also compatible, such as `OpenAI` and `OpenAIEmbeddings`.


## Continue Dev (AI coding assistance)

Continue Dev is a library that provides AI-powered coding assistance. Scaleway's Generative APIs support Continue Dev for code completion and more.
Expand Down