Fiddler는 엔터프라이즈 생성형 및 예측 시스템 운영의 선구자로, 데이터 과학, MLOps, 리스크, 컴플라이언스, 분석 및 기타 LOB 팀이 엔터프라이즈 규모에서 ML 배포를 모니터링, 설명, 분석 및 개선할 수 있도록 통합 플랫폼을 제공합니다.
1. 설치 및 설정
Copy
#!pip install langchain langchain-community langchain-openai fiddler-client
2. Fiddler 연결 정보
Fiddler에 모델 정보를 추가하기 전에- Fiddler에 연결하는 데 사용하는 URL
- 조직 ID
- 인증 토큰
Copy
URL = "" # Your Fiddler instance URL, Make sure to include the full URL (including https://). For example: https://demo.fiddler.ai
ORG_NAME = ""
AUTH_TOKEN = "" # Your Fiddler instance auth token
# Fiddler project and model names, used for model registration
PROJECT_NAME = ""
MODEL_NAME = "" # Model name in Fiddler
3. Fiddler 콜백 핸들러 인스턴스 생성
Copy
from langchain_community.callbacks.fiddler_callback import FiddlerCallbackHandler
fiddler_handler = FiddlerCallbackHandler(
url=URL,
org=ORG_NAME,
project=PROJECT_NAME,
model=MODEL_NAME,
api_key=AUTH_TOKEN,
)
예제 1 : 기본 체인
Copy
from langchain_core.output_parsers import StrOutputParser
from langchain_openai import OpenAI
# Note : Make sure openai API key is set in the environment variable OPENAI_API_KEY
llm = OpenAI(temperature=0, streaming=True, callbacks=[fiddler_handler])
output_parser = StrOutputParser()
chain = llm | output_parser
# Invoke the chain. Invocation will be logged to Fiddler, and metrics automatically generated
chain.invoke("How far is moon from earth?")
Copy
# Few more invocations
chain.invoke("What is the temperature on Mars?")
chain.invoke("How much is 2 + 200000?")
chain.invoke("Which movie won the oscars this year?")
chain.invoke("Can you write me a poem about insomnia?")
chain.invoke("How are you doing today?")
chain.invoke("What is the meaning of life?")
예제 2 : 프롬프트 템플릿을 사용한 체인
Copy
from langchain_core.prompts import (
ChatPromptTemplate,
FewShotChatMessagePromptTemplate,
)
examples = [
{"input": "2+2", "output": "4"},
{"input": "2+3", "output": "5"},
]
example_prompt = ChatPromptTemplate.from_messages(
[
("human", "{input}"),
("ai", "{output}"),
]
)
few_shot_prompt = FewShotChatMessagePromptTemplate(
example_prompt=example_prompt,
examples=examples,
)
final_prompt = ChatPromptTemplate.from_messages(
[
("system", "You are a wondrous wizard of math."),
few_shot_prompt,
("human", "{input}"),
]
)
# Note : Make sure openai API key is set in the environment variable OPENAI_API_KEY
llm = OpenAI(temperature=0, streaming=True, callbacks=[fiddler_handler])
chain = final_prompt | llm
# Invoke the chain. Invocation will be logged to Fiddler, and metrics automatically generated
chain.invoke({"input": "What's the square of a triangle?"})
Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.