langchain-js-bundle
TypeScript icon, indicating that this package has built-in type declarations

0.0.4 • Public • Published

langchain-js-bundle

a consolidated bundle of LangChainJS and LangGraphJS modules for AI examples

Overview

LangChainJS and LangGraphJS are not that easy to handle - particularly, if you want to load everything dynamically into a browser-based IDE and avoid a bundler. In order to simplify imports for my own examples and those of my students, I've created this module which bundles important classes found in LangChainJS and LangGraphJS (and also adds my RestorableMemoryStore)

Installation

The langchain-js-bundle comes as an ECMAScript module (ESM). You may either install the module using npm (or similar) if you still plan to use a bundler:

npm install langchain-js-bundle

Or you may dynamically import it using an import expression

const {
  ChatOpenAI, HumanMessage,SystemMessage, ChatPromptTemplate, StringOutputParser
} = await import("https://rozek.github.io/langchain-js-bundle/dist/index.js")

Usage in Node.js or Browser Environments

Assuming that you have installed the module, you may proceed as follows

import {
  ChatOpenAI, HumanMessage,SystemMessage, ChatPromptTemplate, StringOutputParser
} from 'langchain-js-bundle'

const Model = new ChatOpenAI({
  openAIApiKey:'enter you OpenAI API Key here',
})

async function askModel (Input) {
  const Prompt = ChatPromptTemplate.fromMessages([
    new SystemMessage('You are a helpful assistant'),
    new HumanMessage(Input),
  ])

  const Parser = new StringOutputParser()
  const Chain  = Prompt.pipe(Model).pipe(Parser)

  return await Chain.invoke()
}

;(async () => {
  try {
    const Response = await askModel('Who was Joseph Weizenbaum?')
    console.log(Response)
  } catch (Signal) {
    console.error('chat completion failed',Signal)
  }
})()

Usage within Svelte

For Svelte, it is recommended to import the package in a module context:

<script context="module">
  import {
    ChatOpenAI, HumanMessage,SystemMessage, ChatPromptTemplate, StringOutputParser
  } from 'langchain-js-bundle'
</script>

<script>
  const Model = new ChatOpenAI({
    openAIApiKey:'enter you OpenAI API Key here',
  })

  async function askModel (Input) {
    const Prompt = ChatPromptTemplate.fromMessages([
      new SystemMessage('You are a helpful assistant'),
      new HumanMessage(Input),
    ])

    const Parser = new StringOutputParser()
    const Chain  = Prompt.pipe(Model).pipe(Parser)

    return await Chain.invoke()
  }

  ;(async () => {
    try {
      const Response = await askModel('Who was Joseph Weizenbaum?')
      console.log(Response)
    } catch (Signal) {
      console.error('chat completion failed',Signal)
    }
  })()
</script>

Build Instructions

You may easily build this package yourself.

Just install NPM according to the instructions for your platform and follow these steps:

  1. either clone this repository using git or download a ZIP archive with its contents to your disk and unpack it there
  2. open a shell and navigate to the root directory of this repository
  3. run npm install in order to install the complete build environment
  4. execute npm run build to create a new build

You may also look into the author's build-configuration-study for a general description of his build environment.

Test Instructions

langchain-js-bundle comes with a simple test. Just use

npm run test

to run it and get a report on the console.

License

MIT License

Package Sidebar

Install

npm i langchain-js-bundle

Weekly Downloads

6

Version

0.0.4

License

MIT

Unpacked Size

7.88 MB

Total Files

6

Last publish

Collaborators

  • arozek