@langchain/yandex
TypeScript icon, indicating that this package has built-in type declarations

0.0.3 • Public • Published

@langchain/yandex

This package contains the LangChain.js integrations for YandexGPT through their Foundation Models REST API.

Installation

npm install @langchain/yandex

Setup your environment

First, you should create a service account with the ai.languageModels.user role.

Next, you have two authentication options:

  • IAM token. You can specify the token in a constructor parameter as iam_token or in an environment variable YC_IAM_TOKEN.
  • API key You can specify the key in a constructor parameter as api_key or in an environment variable YC_API_KEY.

Chat Models and LLM Models

This package contains the ChatYandexGPT and YandexGPT classes for working with the YandexGPT series of models.

To specify the model you can use model_uri parameter, see the documentation for more details.

By default, the latest version of yandexgpt-lite is used from the folder specified in the parameter folder_id or YC_FOLDER_ID environment variable.

Examples

import { ChatYandexGPT } from "@langchain/yandex";
import { HumanMessage, SystemMessage } from "@langchain/core/messages";

const chat = new ChatYandexGPT();
const response = await chat.invoke([
  new SystemMessage(
    "You are a helpful assistant that translates English to French."
  ),
  new HumanMessage("I love programming."),
]);
import { YandexGPT } from "@langchain/yandex";
const model = new YandexGPT();
const res = await model.invoke([`Translate "I love programming" into French.`]);

Embeddings

This package also adds support for YandexGPT embeddings models.

To specify the model you can use model_uri parameter, see the documentation for more details.

By default, the latest version of text-search-query embeddings model is used from the folder specified in the parameter folder_id or YC_FOLDER_ID environment variable.

Example

import { YandexGPTEmbeddings } from "@langchain/yandex";

const model = new YandexGPTEmbeddings({});

/* Embed queries */
const res = await model.embedQuery(
  "This is a test document."
);
/* Embed documents */
const documentRes = await model.embedDocuments(["This is a test document."]);

Development

To develop the yandex package, you'll need to follow these instructions:

Install dependencies

yarn install

Build the package

yarn build

Or from the repo root:

yarn build --filter=@langchain/yandex

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:

$ yarn test:int

Lint & Format

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

yarn lint && yarn 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 entrypoints field in the config variable located inside langchain.config.js and run yarn build to generate the new entrypoint.

Readme

Keywords

none

Package Sidebar

Install

npm i @langchain/yandex

Weekly Downloads

47

Version

0.0.3

License

MIT

Unpacked Size

49.5 kB

Total Files

31

Last publish

Collaborators

  • vbarda
  • davidduong
  • andrewnguonly
  • basproul
  • jacoblee93
  • nfcampos
  • sullivan-sean
  • hwchase17