트레이스
사용자 정의 op으로 래핑하기
더 쉽게 실험하기 위한 Model 생성

Weave를 사용해 Cerebras Cloud SDK로 수행되는 LLM 호출을 추적하고 로깅합니다
import os
import weave
from cerebras.cloud.sdk import Cerebras
# weave 프로젝트 초기화
weave.init("cerebras_speedster")
# 평소와 같이 Cerebras SDK 사용
api_key = os.environ["CEREBRAS_API_KEY"]
model = "llama3.1-8b" # Cerebras 모델
client = Cerebras(api_key=api_key)
response = client.chat.completions.create(
model=model,
messages=[{"role": "user", "content": "What's the fastest land animal?"}],
)
print(response.choices[0].message.content)
import os
import weave
from cerebras.cloud.sdk import Cerebras
# weave 프로젝트 초기화
weave.init("cerebras_speedster")
client = Cerebras(api_key=os.environ["CEREBRAS_API_KEY"])
# Weave가 이 함수의 입력, 출력 및 코드를 추적합니다
@weave.op
def animal_speedster(animal: str, model: str) -> str:
"동물이 얼마나 빨리 달릴 수 있는지 알아보기"
response = client.chat.completions.create(
model=model,
messages=[{"role": "user", "content": f"How fast can a {animal} run?"}],
)
return response.choices[0].message.content
animal_speedster("cheetah", "llama3.1-8b")
animal_speedster("ostrich", "llama3.1-8b")
animal_speedster("human", "llama3.1-8b")
Model 생성import os
import weave
from cerebras.cloud.sdk import Cerebras
# weave 프로젝트 초기화
weave.init("cerebras_speedster")
client = Cerebras(api_key=os.environ["CEREBRAS_API_KEY"])
class AnimalSpeedModel(weave.Model):
model: str
temperature: float
@weave.op
def predict(self, animal: str) -> str:
"동물의 최고 속도를 예측합니다"
response = client.chat.completions.create(
model=self.model,
messages=[{"role": "user", "content": f"What's the top speed of a {animal}?"}],
temperature=self.temperature
)
return response.choices[0].message.content
speed_model = AnimalSpeedModel(
model="llama3.1-8b",
temperature=0.7
)
result = speed_model.predict(animal="cheetah")
print(result)
