Ollama
Installation
Section titled “Installation”npm i llamaindex @llamaindex/ollamaimport { Ollama } from "@llamaindex/ollama";import { Settings } from "llamaindex";
Settings.llm = ollamaLLM;Settings.embedModel = ollamaLLM;Load and index documents
Section titled “Load and index documents”For this example, we will use a single document. In a real-world scenario, you would have multiple documents to index.
import { Document, VectorStoreIndex } from "llamaindex";
const document = new Document({ text: essay, id_: "essay" });
const index = await VectorStoreIndex.fromDocuments([document]);const queryEngine = index.asQueryEngine();
const query = "What is the meaning of life?";
const results = await queryEngine.query({  query,});Using JSON Response Format
Section titled “Using JSON Response Format”You can configure Ollama to return responses in JSON format:
import { Ollama } from "@llamaindex/llms/ollama";import { z } from "zod";
// Simple JSON formatconst llm = new Ollama({  model: "llama2",  temperature: 0,  responseFormat: { type: "json_object" }});
// Using Zod schema for validationconst responseSchema = z.object({  summary: z.string(),  topics: z.array(z.string()),  sentiment: z.enum(["positive", "negative", "neutral"])});
const llm = new Ollama({  model: "llama2",  temperature: 0,  responseFormat: responseSchema});Full Example
Section titled “Full Example”import { Ollama } from "@llamaindex/ollama";import { Document, VectorStoreIndex, Settings } from "llamaindex";
import fs from "fs/promises";
const ollama = new Ollama({ model: "llama2", temperature: 0.75 });
// Use Ollama LLM and Embed ModelSettings.llm = ollama;Settings.embedModel = ollama;
async function main() {  const essay = await fs.readFile("./paul_graham_essay.txt", "utf-8");
  const document = new Document({ text: essay, id_: "essay" });
  // Load and index documents  const index = await VectorStoreIndex.fromDocuments([document]);
  // get retriever  const retriever = index.asRetriever();
  // Create a query engine  const queryEngine = index.asQueryEngine({    retriever,  });
  const query = "What is the meaning of life?";
  // Query  const response = await queryEngine.query({    query,  });
  // Log the response  console.log(response.response);}