Nia 툴킷 통합

Nia 툴킷 통합 (Nia Toolkit integration)

LangChain JavaScript로 Nia 검색·인덱스 API와 통합해요.

Nia는 문서, 연구 논문, 데이터셋, 코드베이스 등에서 컨텍스트를 지속적으로 제공하는 검색·인덱스 API예요. 그래서 에이전트가 낡은(stale) 데이터에 의존하지 않아요. 확장 가능하고, 5배 저렴하며, 신뢰할 수 있어요.

개요 (Overview)

통합 세부 정보 (Integration details)

클래스 패키지 PY 지원 버전
NiaToolkit @nozomioai/langchain-nia NPM - Version

설정 (Setup)

이 통합은 @nozomioai/langchain-nia 패키지에 있어요:

```bash npm npm install @nozomioai/langchain-nia @langchain/core ```
yarn add @nozomioai/langchain-nia @langchain/core
pnpm add @nozomioai/langchain-nia @langchain/core

자격 증명 (Credentials)

API 키를 얻으려면 trynia.ai에 가입하세요.

process.env.NIA_API_KEY = "nk_...";

LangSmith를 설정하는 것도 최고 수준의 관측 가능성(observability)을 위해 도움이 돼요 (필수는 아니에요):

process.env.LANGSMITH_TRACING = "true";
process.env.LANGSMITH_API_KEY = "your-api-key";

인스턴스화 (Instantiation)

툴킷 사용 (Using the toolkit)

import { NiaToolkit } from "@nozomioai/langchain-nia";

const toolkit = new NiaToolkit({
  includeSearch: true,        // 5 search tools
  includeSources: true,       // 7 source management tools
  includeGithub: true,        // 4 GitHub tools
  includeContexts: true,      // 2 context/memory tools
  includeDependencies: true,  // 2 dependency tools
});

const tools = toolkit.getTools(); // 20 tools

개별 툴 사용 (Using individual tools)

import { NiaSearch } from "@nozomioai/langchain-nia";

const tool = new NiaSearch();

호출 (Invocation)

인덱스된 소스 검색 (Search across indexed sources)

import { NiaSearch } from "@nozomioai/langchain-nia";

const tool = new NiaSearch();
const result = await tool.invoke({ query: "how to use React hooks" });

웹 검색 (Search the web)

import { NiaWebSearch } from "@nozomioai/langchain-nia";

const tool = new NiaWebSearch();
const result = await tool.invoke({ query: "latest Node.js release", numResults: 5 });

에이전트 내에서 (Within an agent)

import { NiaToolkit } from "@nozomioai/langchain-nia";
import { ChatOpenAI } from "@langchain/openai";

const toolkit = new NiaToolkit({ includeSearch: true });
const tools = toolkit.getTools();

const llm = new ChatOpenAI({ model: "gpt-4o" });
const llmWithTools = llm.bindTools(tools);

const result = await llmWithTools.invoke("Search for React hooks best practices");

사용 가능한 툴 (Available tools)

설명
NiaSearch 인덱스된 레포·문서·데이터 소스 전반의 의미론적 검색
NiaWebSearch 카테고리 필터링·날짜 범위를 지원하는 웹 검색
NiaDeepResearch 다단계 종합 리서치
NiaUniversalSearch 모든 소스를 동시에 검색
NiaAdvisor 인덱스된 문서에 대비해 코드 분석
NiaIndex 새 소스 인덱스 (레포·문서·논문·데이터셋)
NiaSourceList 필터링이 포함된 인덱스된 소스 목록
NiaSourceSubscribe 사전 인덱스된 공개 소스 구독
NiaSourceSync 최신 변경사항을 가져오도록 소스 재동기화
NiaRead 인덱스된 소스의 파일·페이지 읽기
NiaGrep 인덱스된 소스 내 정규식 검색
NiaExplore 인덱스된 소스의 파일 트리 탐색
NiaGitHubSearch GitHub 레포의 코드 검색
NiaGitHubRead GitHub 레포의 파일 읽기
NiaGitHubGlob glob 패턴과 일치하는 파일 찾기
NiaGitHubTree 레포 파일 트리 탐색
NiaContextSave 에이전트 간 공유를 위한 컨텍스트 저장
NiaContextSearch 저장된 컨텍스트에 대한 의미론적 검색
NiaDependencySubscribe 프로젝트 의존성에 대한 문서 자동 구독
NiaDependencyAnalyze 매니페스트에서 인덱스 가능한 의존성 미리보기

API reference

자세한 문서는 langchain-nia GitHub 리포지토리를 참고하세요.

출처: 문서

본문

Nia 툴킷은 @nozomioai/langchain-nia 패키지에서 제공되며, 검색·웹·GitHub·컨텍스트·의존성 등 20개의 툴을 구성할 수 있어요. NiaToolkit으로 툴킷을 생성해 getTools()로 툴 묶음을 얻거나, 개별 툴을 직접 인스턴스화해 사용할 수 있어요. NIA_API_KEY 환경 변수로 API 키를 설정해야 해요.

더 알아보기 (Learn more)