TogetherAIEmbeddings 통합
TogetherAIEmbeddings 통합
LangChain JavaScript로 TogetherAIEmbeddings 임베딩 모델과 통합하는 방법을 안내할게요.
출처: 문서
본문
이 문서는 LangChain으로 TogetherAIEmbeddings 임베딩 모델을 시작하는 데 도움을 줘요. TogetherAIEmbeddings 기능과 구성 옵션에 대한 자세한 문서는 API 레퍼런스를 참고하세요.
개요
통합 세부 정보
| 클래스 | 패키지 | Local | Py 지원 | Downloads | Version |
|---|---|---|---|---|---|
TogetherAIEmbeddings |
@langchain/together-ai |
❌ | ✅ |
설정
Together AI 임베딩 모델에 접근하려면 Together 계정을 만들고 API 키를 받은 뒤 @langchain/together-ai 통합 패키지를 설치해야 해요.
자격 증명
Together 계정에 가입하고 API 키를 만들 수 있어요. TOGETHER_AI_API_KEY 환경 변수를 설정하세요:
export TOGETHER_AI_API_KEY="your-api-key"
모델 호출의 자동 추적(tracing)을 원한다면 아래 주석을 해제해 LangSmith API 키를 설정할 수도 있어요:
# export LANGSMITH_TRACING="true"
# export LANGSMITH_API_KEY="your-api-key"
설치
LangChain TogetherAIEmbeddings 통합은 @langchain/together-ai 패키지에 있어요:
yarn add @langchain/together-ai @langchain/core
pnpm add @langchain/together-ai @langchain/core
인스턴스 생성
임베딩 모델을 인스턴스화하세요:
import { TogetherAIEmbeddings } from "@langchain/together-ai";
const embeddings = new TogetherAIEmbeddings({
model: "togethercomputer/m2-bert-80M-8k-retrieval", // Default value
});
인덱싱 및 검색
임베딩 모델은 데이터 인덱싱과 나중 검색 모두의 일부로, 검색 증강 생성(RAG) 흐름에서 자주 사용돼요. 더 자세한 지침은 Learn 탭의 RAG 튜토리얼을 참고하세요.
아래에서 위에서 초기화한 embeddings 객체로 데이터를 인덱싱하고 검색하는 방법을 확인하세요. 이 예제에서는 데모 MemoryVectorStore를 사용해 샘플 문서를 인덱싱하고 검색할 거예요.
// Create a vector store with a sample text
import { MemoryVectorStore } from "@langchain/classic/vectorstores/memory";
const text = "LangChain is the framework for building context-aware reasoning applications";
const vectorstore = await MemoryVectorStore.fromDocuments(
[{ pageContent: text, metadata: {} }],
embeddings,
);
// Use the vector store as a retriever that returns a single document
const retriever = vectorstore.asRetriever(1);
// Retrieve the most similar text
const retrievedDocuments = await retriever.invoke("What is LangChain?");
retrievedDocuments[0].pageContent;
LangChain is the framework for building context-aware reasoning applications
직접 사용
내부적으로 vectorstore와 retriever 구현은 fromDocuments에 사용된 텍스트와 retriever의 invoke 연산에 대해 각각 embeddings.embedDocument(...) 와 embeddings.embedQuery(...)를 호출해 임베딩을 만들어요.
이 메서드들을 직접 호출해 자신의 사용 사례에 대한 임베딩을 얻을 수 있어요.
단일 텍스트 임베딩
embedQuery로 검색을 위한 쿼리를 임베딩할 수 있어요. 이는 쿼리에 특화된 벡터 표현을 생성해요:
const singleVector = await embeddings.embedQuery(text);
console.log(singleVector.slice(0, 100));
[
0.3812227, -0.052848946, -0.10564975, 0.03480297, 0.2878488,
0.0084609175, 0.11605915, 0.05303011, 0.14711718, -0.14407106,
-0.29865336, -0.15807179, -0.068397366, -0.2708063, 0.056596708,
-0.07656515, 0.052995138, -0.11275427, 0.028096694, 0.123501234,
-0.039519835, 0.12148692, -0.12820457, 0.15691335, 0.033519063,
-0.27026987, -0.08460162, -0.23792154, -0.234982, -0.05786798,
0.016467346, -0.17168592, -0.060787182, 0.038752213, -0.08169927,
0.09327062, 0.29490772, 0.0167866, -0.32224452, -0.2037822,
-0.10284172, -0.124050565, 0.25344968, -0.06275548, -0.14180769,
0.0046709594, 0.073105976, 0.12004031, 0.19224276, -0.022589967,
0.102790825, 0.1138286, -0.057701062, -0.050010648, -0.1632584,
-0.18942119, -0.12018798, 0.15288158, 0.07941474, 0.10440051,
-0.13257962, -0.19282033, 0.044656333, 0.13560675, -0.068929024,
0.028590716, 0.055663664, 0.04652713, 0.014936657, 0.120679885,
0.053866718, -0.16296014, 0.119450666, -0.29559663, 0.008097747,
0.07380408, -0.09010084, -0.0687739, -0.08575685, -0.07202606,
0.18868081, -0.08392917, 0.014016109, 0.15435852, -0.030115498,
-0.16927013, 0.02836557, -0.050763763, 0.0840437, -0.22718845,
0.111397505, 0.033395614, -0.123287566, -0.2111604, -0.1580479,
0.05520573, -0.1422921, 0.08828953, 0.051058788, -0.13312188
]
여러 텍스트 임베딩
embedDocuments로 인덱싱을 위한 여러 텍스트를 임베딩할 수 있어요. 이 메서드에 사용되는 내부는 쿼리 임베딩과 다를 수 있지만(다를 필요는 없음) 있어요:
const text2 = "LangGraph is a library for building stateful, multi-actor applications with LLMs";
const vectors = await embeddings.embedDocuments([text, text2]);
console.log(vectors[0].slice(0, 100));
console.log(vectors[1].slice(0, 100));
[
0.3812227, -0.052848946, -0.10564975, 0.03480297, 0.2878488,
0.0084609175, 0.11605915, 0.05303011, 0.14711718, -0.14407106,
-0.29865336, -0.15807179, -0.068397366, -0.2708063, 0.056596708,
-0.07656515, 0.052995138, -0.11275427, 0.028096694, 0.123501234,
-0.039519835, 0.12148692, -0.12820457, 0.15691335, 0.033519063,
-0.27026987, -0.08460162, -0.23792154, -0.234982, -0.05786798,
0.016467346, -0.17168592, -0.060787182, 0.038752213, -0.08169927,
0.09327062, 0.29490772, 0.0167866, -0.32224452, -0.2037822,
-0.10284172, -0.124050565, 0.25344968, -0.06275548, -0.14180769,
0.0046709594, 0.073105976, 0.12004031, 0.19224276, -0.022589967,
0.102790825, 0.1138286, -0.057701062, -0.050010648, -0.1632584,
-0.18942119, -0.12018798, 0.15288158, 0.07941474, 0.10440051,
-0.13257962, -0.19282033, 0.044656333, 0.13560675, -0.068929024,
0.028590716, 0.055663664, 0.04652713, 0.014936657, 0.120679885,
0.053866718, -0.16296014, 0.119450666, -0.29559663, 0.008097747,
0.07380408, -0.09010084, -0.0687739, -0.08575685, -0.07202606,
0.18868081, -0.08392917, 0.014016109, 0.15435852, -0.030115498,
-0.16927013, 0.02836557, -0.050763763, 0.0840437, -0.22718845,
0.111397505, 0.033395614, -0.123287566, -0.2111604, -0.1580479,
0.05520573, -0.1422921, 0.08828953, 0.051058788, -0.13312188
]
[
0.066308185, -0.032866564, 0.115751594, 0.19082588, 0.14017,
-0.26976448, -0.056340694, -0.26923394, 0.2548541, -0.27271318,
-0.2244126, 0.07949589, -0.27710953, -0.17993368, 0.09681616,
-0.08692256, 0.22127126, -0.14512022, -0.18016525, 0.14892976,
-0.0526347, -0.008140617, -0.2916987, 0.23706906, -0.38488507,
-0.35881752, 0.09276949, -0.07051063, -0.07778231, 0.12552947,
0.06256748, -0.25832427, 0.025054429, -0.1451448, -0.2662871,
0.13676351, -0.07413256, 0.14966589, -0.39968985, 0.15542287,
-0.13107607, 0.02761394, 0.108077586, -0.12076956, 0.128296,
-0.05625126, 0.15723586, -0.056932643, 0.23720805, 0.23993455,
-0.035553705, -0.053907514, -0.11852807, 0.07005695, -0.06317475,
0.070009425, 0.284697, 0.2212059, 0.018890115, 0.16924675,
0.21651487, 0.07259682, 0.1328156, 0.3261852, 0.1914124,
-0.10120423, 0.03450111, -0.22588971, -0.04458192, 0.24116798,
-0.021830376, -0.30731413, 0.08586451, -0.058835756, 0.0010347435,
0.0031927782, -0.09403646, -0.22608931, 0.15865424, 0.15738021,
0.23582733, 0.1714161, 0.1585189, -0.18085755, 0.019376995,
-0.026587496, -0.017079154, -0.04588549, -0.047336094, -0.082413346,
-0.1114185, -0.05403556, 0.12438637, -0.20476522, 0.073182,
-0.12210378, -0.010543863, -0.09767598, 0.1057683, -0.050204434
]
API 레퍼런스
모든 TogetherAIEmbeddings 기능과 구성에 대한 자세한 문서는 API 레퍼런스를 참고하세요.
더 알아보기
- 이 문서를 MCP로 연결하면 Claude, VSCode 등에서 실시간 답변을 받을 수 있어요.
- GitHub에서 이 페이지 편집하기 또는 이슈 제출하기.