Passer au contenu principal
Weave suit automatiquement et la tenue d’un journal des appels LLM effectués via le SDK Cerebras Cloud.

Traces

Le suivi des appels LLM est crucial pour le débogage et la surveillance des performances. Weave vous aide à le faire en capturant automatiquement des traces pour le SDK Cerebras Cloud. Voici un exemple montrant comment utiliser Weave avec Cerebras :
import os
import weave
from cerebras.cloud.sdk import Cerebras

# Initialiser le projet weave
weave.init("cerebras_speedster")

# Utiliser le SDK Cerebras normalement
api_key = os.environ["CEREBRAS_API_KEY"]
model = "llama3.1-8b"  # Modèle 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)
Weave va désormais suivre et tenir un journal de tous les appels LLM effectués via le SDK Cerebras. Vous pouvez consulter les traces dans l’interface web de Weave, avec des détails tels que l’utilisation des tokens et le temps de réponse. Vue de trace Weave montrant des appels LLM Cerebras

Encapsulez avec vos propres ops

Les Weave Ops améliorent la reproductibilité et la traçabilité de vos expériences en assurant automatiquement la gestion des versions de votre code et en capturant les entrées et sorties. Voici un exemple d’utilisation des Weave Ops avec le SDK Cerebras :
import os
import weave
from cerebras.cloud.sdk import Cerebras

# Initialiser le projet Weave
weave.init("cerebras_speedster")

client = Cerebras(api_key=os.environ["CEREBRAS_API_KEY"])

# Weave suivra les entrées, les sorties et le code de cette fonction
@weave.op
def animal_speedster(animal: str, model: str) -> str:
    "Find out how fast an animal can run"
    
    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")

Créez un Model pour simplifier l’expérimentation

Dans Weave, la classe Model vous aide à organiser et à comparer différentes itérations de votre application. C’est particulièrement utile lorsque vous expérimentez avec des modèles Cerebras. Voici un exemple :
import os
import weave
from cerebras.cloud.sdk import Cerebras

# Initialiser le projet 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:
        "Predict the top speed of an animal"        

        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)
Avec cette configuration, vous pouvez tester différents modèles et paramètres tout en suivant vos inférences effectuées avec Cerebras. traces du modèle Weave pour les expériences Cerebras