Send results to Snowflake
Recipe — load Stratix results into Snowflake.
from datetime import datetime, timedelta
import snowflake.connector
from layerlens import Stratix
client = Stratix()
conn = snowflake.connector.connect(user=..., password=..., account=...)
cursor = conn.cursor()
since = datetime.utcnow() - timedelta(hours=24)
page = 1
while True:
response = client.evaluations.get_many(page=page, page_size=100, sort_by="submitted_at", order="desc")
evaluations = [e for e in response.evaluations if e.submitted_at >= since]
if not evaluations:
break
for evaluation in evaluations:
results = client.results.get_all(evaluation=evaluation)
cursor.executemany(
"INSERT INTO eval_results (eval_id, prompt, result, truth, score, subset) VALUES (%s, %s, %s, %s, %s, %s)",
[(evaluation.id, r.prompt, r.result, r.truth, r.score, r.subset) for r in results],
)
if page >= response.pagination.total_pages:
break
page += 1
conn.commit()See also
Last updated
Was this helpful?