!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}return t}()||function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}(),document.documentElement.setAttribute("data-announcement-bar-initially-dismissed",function(){try{return"true"===localStorage.getItem("docusaurus.announcement.dismiss")}catch(t){}return!1}())

[Skip to main content](#__docusaurus_skipToContent_fallback)

You are viewing the **preview** v0.2 docs. View the **stable** v0.1 docs [here](/v0.1/docs/get_started/introduction/). Leave feedback on the v0.2 docs [here](https://github.com/langchain-ai/langchainjs/discussions/5386).

[

![🦜️🔗 Langchain](/v0.2/img/brand/wordmark.png)![🦜️🔗 Langchain](/v0.2/img/brand/wordmark-dark.png)

](/v0.2/)[Integrations](/v0.2/docs/integrations/platforms/)[API Reference](https://v02.api.js.langchain.com)

[More](#)

*   [People](/v0.2/docs/people/)
*   [Community](/v0.2/docs/community)
*   [Tutorials](/v0.2/docs/additional_resources/tutorials)
*   [Contributing](/v0.2/docs/contributing)

[v0.2](#)

*   [v0.2](/v0.2/docs/introduction)
*   [v0.1](https://js.langchain.com/v0.1/docs/get_started/introduction)

[🦜🔗](#)

*   [LangSmith](https://smith.langchain.com)
*   [LangSmith Docs](https://docs.smith.langchain.com)
*   [LangChain Hub](https://smith.langchain.com/hub)
*   [LangServe](https://github.com/langchain-ai/langserve)
*   [Python Docs](https://python.langchain.com/)

[Chat](https://chatjs.langchain.com)[](https://github.com/langchain-ai/langchainjs)

Search

*   [Providers](/v0.2/docs/integrations/platforms/)
    
    *   [Providers](/v0.2/docs/integrations/platforms/)
    *   [Anthropic](/v0.2/docs/integrations/platforms/anthropic)
    *   [AWS](/v0.2/docs/integrations/platforms/aws)
    *   [Google](/v0.2/docs/integrations/platforms/google)
    *   [Microsoft](/v0.2/docs/integrations/platforms/microsoft)
    *   [OpenAI](/v0.2/docs/integrations/platforms/openai)
*   [Components](/v0.2/docs/integrations/components)
    
    *   [Chat models](/v0.2/docs/integrations/chat/)
        
    *   [LLMs](/v0.2/docs/integrations/llms/)
        
        *   [LLMs](/v0.2/docs/integrations/llms/)
        *   [AI21](/v0.2/docs/integrations/llms/ai21)
        *   [AlephAlpha](/v0.2/docs/integrations/llms/aleph_alpha)
        *   [AWS SageMakerEndpoint](/v0.2/docs/integrations/llms/aws_sagemaker)
        *   [Azure OpenAI](/v0.2/docs/integrations/llms/azure)
        *   [Bedrock](/v0.2/docs/integrations/llms/bedrock)
        *   [Cloudflare Workers AI](/v0.2/docs/integrations/llms/cloudflare_workersai)
        *   [Cohere](/v0.2/docs/integrations/llms/cohere)
        *   [Fireworks](/v0.2/docs/integrations/llms/fireworks)
        *   [Friendli](/v0.2/docs/integrations/llms/friendli)
        *   [(Legacy) Google PaLM/VertexAI](/v0.2/docs/integrations/llms/google_palm)
        *   [Google Vertex AI](/v0.2/docs/integrations/llms/google_vertex_ai)
        *   [Gradient AI](/v0.2/docs/integrations/llms/gradient_ai)
        *   [HuggingFaceInference](/v0.2/docs/integrations/llms/huggingface_inference)
        *   [Llama CPP](/v0.2/docs/integrations/llms/llama_cpp)
        *   [NIBittensor](/v0.2/docs/integrations/llms/ni_bittensor)
        *   [Ollama](/v0.2/docs/integrations/llms/ollama)
        *   [OpenAI](/v0.2/docs/integrations/llms/openai)
        *   [PromptLayer OpenAI](/v0.2/docs/integrations/llms/prompt_layer_openai)
        *   [RaycastAI](/v0.2/docs/integrations/llms/raycast)
        *   [Replicate](/v0.2/docs/integrations/llms/replicate)
        *   [Together AI](/v0.2/docs/integrations/llms/togetherai)
        *   [WatsonX AI](/v0.2/docs/integrations/llms/watsonx_ai)
        *   [Writer](/v0.2/docs/integrations/llms/writer)
        *   [YandexGPT](/v0.2/docs/integrations/llms/yandex)
    *   [Embedding models](/v0.2/docs/integrations/text_embedding)
        
    *   [Document loaders](/v0.2/docs/integrations/document_loaders)
        
    *   [Document transformers](/v0.2/docs/integrations/document_transformers)
        
    *   [Vector stores](/v0.2/docs/integrations/vectorstores)
        
    *   [Retrievers](/v0.2/docs/integrations/retrievers)
        
    *   [Tools](/v0.2/docs/integrations/tools)
        
    *   [Toolkits](/v0.2/docs/integrations/toolkits)
        
    *   [Stores](/v0.2/docs/integrations/stores/)
        

*   [](/v0.2/)
*   [Components](/v0.2/docs/integrations/components)
*   [LLMs](/v0.2/docs/integrations/llms/)
*   Ollama

On this page

Ollama
======

[Ollama](https://ollama.ai/) allows you to run open-source large language models, such as Llama 2, locally.

Ollama bundles model weights, configuration, and data into a single package, defined by a Modelfile. It optimizes setup and configuration details, including GPU usage.

This example goes over how to use LangChain to interact with an Ollama-run Llama 2 7b instance. For a complete list of supported models and model variants, see the [Ollama model library](https://github.com/jmorganca/ollama#model-library).

Setup[​](#setup "Direct link to Setup")
---------------------------------------

Follow [these instructions](https://github.com/jmorganca/ollama) to set up and run a local Ollama instance.

Usage[​](#usage "Direct link to Usage")
---------------------------------------

tip

See [this section for general instructions on installing integration packages](/v0.2/docs/how_to/installation#installing-integration-packages).

*   npm
*   Yarn
*   pnpm

    npm install @langchain/community

    yarn add @langchain/community

    pnpm add @langchain/community

    import { Ollama } from "@langchain/community/llms/ollama";const ollama = new Ollama({  baseUrl: "http://localhost:11434", // Default value  model: "llama2", // Default value});const stream = await ollama.stream(  `Translate "I love programming" into German.`);const chunks = [];for await (const chunk of stream) {  chunks.push(chunk);}console.log(chunks.join(""));/*  I'm glad to help! "I love programming" can be translated to German as "Ich liebe Programmieren."  It's important to note that the translation of "I love" in German is "ich liebe," which is a more formal and polite way of saying "I love." In informal situations, people might use "mag ich" or "möchte ich" instead.  Additionally, the word "Programmieren" is the correct term for "programming" in German. It's a combination of two words: "Programm" and "-ieren," which means "to do something." So, the full translation of "I love programming" would be "Ich liebe Programmieren.*/

#### API Reference:

*   [Ollama](https://v02.api.js.langchain.com/classes/langchain_community_llms_ollama.Ollama.html) from `@langchain/community/llms/ollama`

Multimodal models[​](#multimodal-models "Direct link to Multimodal models")
---------------------------------------------------------------------------

Ollama supports open source multimodal models like [LLaVA](https://ollama.ai/library/llava) in versions 0.1.15 and up. You can bind base64 encoded image data to multimodal-capable models to use as context like this:

    import { Ollama } from "@langchain/community/llms/ollama";import * as fs from "node:fs/promises";const imageData = await fs.readFile("./hotdog.jpg");const model = new Ollama({  model: "llava",  baseUrl: "http://127.0.0.1:11434",}).bind({  images: [imageData.toString("base64")],});const res = await model.invoke("What's in this image?");console.log({ res });/*  {    res: ' The image displays a hot dog sitting on top of a bun, which is placed directly on the table. The hot dog has a striped pattern on it and looks ready to be eaten.'  }*/

#### API Reference:

*   [Ollama](https://v02.api.js.langchain.com/classes/langchain_community_llms_ollama.Ollama.html) from `@langchain/community/llms/ollama`

* * *

#### Was this page helpful?

  

#### You can leave detailed feedback [on GitHub](https://github.com/langchain-ai/langchainjs/issues/new?assignees=&labels=03+-+Documentation&projects=&template=documentation.yml&title=DOC%3A+%3CPlease+write+a+comprehensive+title+after+the+%27DOC%3A+%27+prefix%3E).

[

Previous

NIBittensor

](/v0.2/docs/integrations/llms/ni_bittensor)[

Next

OpenAI

](/v0.2/docs/integrations/llms/openai)

*   [Setup](#setup)
*   [Usage](#usage)
*   [Multimodal models](#multimodal-models)

Community

*   [Discord](https://discord.gg/cU2adEyC7w)
*   [Twitter](https://twitter.com/LangChainAI)

GitHub

*   [Python](https://github.com/langchain-ai/langchain)
*   [JS/TS](https://github.com/langchain-ai/langchainjs)

More

*   [Homepage](https://langchain.com)
*   [Blog](https://blog.langchain.dev)

Copyright © 2024 LangChain, Inc.