Back to Langchainjs

@langchain/nomic

libs/community/langchain-nomic/README.md

1-head1.9 KB
Original Source

@langchain/nomic

This package contains the LangChain.js integrations for Nomic via the @nomic-ai/atlas package.

Installation

bash
npm install @langchain/nomic @langchain/core

Embeddings

This package adds support for Nomic embeddings.

Currently, they offer two embeddings models:

  • nomic-embed-text-v1
  • nomic-embed-text-v1.5

nomic-embed-text-v1.5 allows for you to customize the number of dimensions returned. It defaults to the largest possible number of dimensions (768), or you can select 64, 128, 256, or 512.

Now set the necessary environment variable (or pass it in via the constructor):

bash
export NOMIC_API_KEY=
typescript
import { NomicEmbeddings } from "@langchain/nomic";

const nomicEmbeddings = new NomicEmbeddings({
  apiKey: process.env.NOMIC_API_KEY, // Default value.
  modelName: "nomic-embed-text-v1", // Default value.
});

const docs = [
  "hello world",
  "nomic embeddings!",
  "super special langchain integration package",
  "what color is the sky?",
];

const embeddings = await nomicEmbeddings.embedDocuments(docs);

Development

To develop the @langchain/nomic package, you'll need to follow these instructions:

Install dependencies

bash
pnpm install

Build the package

bash
pnpm build

Or from the repo root:

bash
pnpm build --filter @langchain/nomic

Run tests

Test files should live within a tests/ file in the src/ folder. Unit tests should end in .test.ts and integration tests should end in .int.test.ts:

bash
$ pnpm test
$ pnpm test:int

Lint & Format

Run the linter & formatter to ensure your code is up to standard:

bash
pnpm lint && pnpm format

Adding new entrypoints

If you add a new file to be exported, either import & re-export from src/index.ts, or add it to the exports field in the package.json file and run pnpm build to generate the new entrypoint.