Week of August 5th
Image by author.

Week of August 5th

TL;DR:



?? Congrats to British Cycling for winning gold in the women's team sprint!

For those that don't know, the British Cycling team is very technology forward. They were an early adopter of Hamilton and use it for their telemetry processing pipeline to extract insights and improve athlete outcomes (in the velodrome events IIRC). We couldn't be more excited that Hamilton played a part in the team's preparations for this year's Olympic games. ??


Hamilton Release Notes:

Hamilton Framework == 1.73.1

?? Fixes:

  • Thanks to Noah Ridge for submitting a fix to the PandasExcelWriter data saver. It now won’t overwrite your excel files. This is their first contribution!

? ?? Documentation / Examples :


Burr Updates ??

Burr crossed 1000 ??s on GitHub this week! Couldn't be more excited about the progress and pace of adoption.


Burr == 0.26.0

New features/improvements:

  • Adds attribute logging -- this enables you to log observations about your Burr app at any given point!
  • Allows specifiable host for burr command (enabling you to run in a docker image).
  • cleans up unnecessary button in UI
  • ships some scaffolding for S3-based prod burr telemetry app -- reach out if you're interested in deploying in production!

Really excited about attribute logging -- this works out of the box with the Burr tracking client, and can be extended to work with other LLM visibility systems. Take this, for example:

from burr.visibility import TracingFactory
from burr.core import action

@action(reads=['prompt'], writes=['response'])
def my_action(state: State, __tracer: TracingFactory) -> State: 
   
    # log attributes
    __tracer.log_attribute(
       prompt_length=len(state["prompt"]), 
       prompt=state["prompt"]
   )

   # create spans and log within a span
    with __tracer('create_prompt') as t:
        modified_prompt = _modify_prompt(state["prompt"])
        t.log_attribute(modified_prompt=modified_prompt)

   # create spans and log within a span
    with __tracer('call_llm', dependencies=['create_prompt']) as t:
        response = _query(prompt=modified_prompt)
        t.log_attribute(response=response.message, 
                                  tokens=response.tokens)
    return state.update({'response': response.message})        

Blog Posts

Data Quality with Hamilton + Pandera

This post is long overdue. It covers some of the functionality that Hamilton provides with check_output and check_output_custom decorators along with showing Hamilton's Pandera integration. If you're looking for a lightweight alternative to heavy-weight systems like Great Expectations, then this post is for you!

E.g. to validate dataframes with Pandera you can have it all in one place:

import pandera as pa
import pandas as pd
from hamilton.function_modifiers import check_output

@check_output(
    schema=pa.DataFrameSchema(
        {
            'column1': pa.Column(int),
            'column2': pa.Column(float, pa.Check(lambda s: s < -1.2)),
            # you can provide a list of validators
            'column3': pa.Column(str, [
                pa.Check(lambda s: s.str.startswith('value')),
                pa.Check(lambda s: s.str.split('_', expand=True).shape[1] == 2)
            ]),
        },
        index=pa.Index(int),
        strict=True,
    ), 
    importance="fail"
)
def dataframe_transform(...) -> pd.DataFrame:
    ... # your logic        


Modeling Pregnancy Due Dates with Hamilton


Want to understand what this is? Check out the post.

This is a fun post by Elijah ben Izzy that shows what he did with Hamilton in anticipation of becoming a father. Baby came and all is healthy. Congrats Elijah ben Izzy .



Hamilton OS Meetup Group

Reminder there's no meet-up in July. But we have August scheduled. Join/sign-up here. We're excited to have Gilad Rubin speak about some of the work he's been doing on Hamilton.


In the wild

Burr mentioned on LinkedIn

There was another post that talks about pains with LangChain. I'll spare you the details -- you can read them here. What's exciting to us, is the common thread that we're seeing with these types of posts, as Burr is being mentioned as a great candidate for building GenAI applications with. We think this is a testament to our philosophy of making it easy to customize, but then also straightforward to take to production. Haven't tried Burr yet? Watch my latest video that walks through a notebook showing some of the features of Burr.



要查看或添加评论,请登录

Stefan Krawczyk的更多文章

  • February Updates

    February Updates

    TL;DR: #Hamilton highlights: crossed 2000 github stars, released multithreading based DAG parallelism, RichProgressBar…

    3 条评论
  • Last week of 2024 / first week of 2025

    Last week of 2024 / first week of 2025

    TL;DR: #Hamilton + #Burr 2024 stats: 35M+ telemetry events (10x), 100K+ unique IPs (10x) from 1000+ companies, 1M+…

    3 条评论
  • Week of December 9th

    Week of December 9th

    TL;DR: #Hamilton release highlights: Better TypedDict support and modular subdag example Office Hours & Meet ups for…

  • Week of December 2nd

    Week of December 2nd

    TL;DR: #Hamilton release highlights: Async Datadog Integration, Polars & Pandas with_columns support. #Burr release…

  • Week of November 18th

    Week of November 18th

    TL;DR: #Hamilton release highlights: SDK configurability #Burr release highlights: parallelism UI modifications, video…

  • Week of November 11th

    Week of November 11th

    TL;DR: #Hamilton release highlights: async support for @pipe + various small fixes #Burr release highlights:…

  • Week of November 4th

    Week of November 4th

    TL;DR: #Hamilton release highlights: @with_columns decorator for Pandas by Jernej Frank & module overrides for async…

  • Week of October 28th

    Week of October 28th

    TL;DR: #Hamilton release highlights: in-memory cache store. #Burr release highlights: release candidate for a first…

  • Week of October 21st

    Week of October 21st

    TL;DR: #Hamilton release highlights: some minor fixes and docs updates from five different OS contributors! Also…

  • Week of October 14th

    Week of October 14th

    TL;DR: Announcing Shreya Shankar as an advisor. #Hamilton release highlights: tweaks to pipe_input, new…

    3 条评论

社区洞察

其他会员也浏览了