Skip to content

Instantly share code, notes, and snippets.

View elijahbenizzy's full-sized avatar

Elijah ben Izzy elijahbenizzy

View GitHub Profile
from burr.integrations.ray import RayExecutor
persister = SQLitePersister(db_path="./db")
persister.initialize()
app = (
ApplicationBuilder()
.with_actions(user_input, final_results, generate_all_poems=GenerateAllPoems())
.with_transitions(
("user_input", "generate_all_poems"),
("generate_all_poems", "final_results"),
persister = SQLitePersister(db_path="./db")
persister.initialize()
app = (
ApplicationBuilder()
.with_actions(user_input, final_results, generate_all_poems=GenerateAllPoems())
.with_transitions(
("user_input", "generate_all_poems"),
("generate_all_poems", "final_results"),
)
.with_tracker(project="demo:parallel_agents_fault_tolerance")
app = (
ApplicationBuilder()
.with_actions(user_input, final_results, generate_all_poems=GenerateAllPoems())
.with_transitions(
("user_input", "generate_all_poems"),
("generate_all_poems", "final_results"),
)
.with_tracker(project="demo:parallel_agents")
.with_entrypoint("user_input")
.build()
class GenerateAllPoems(MapStates):
def states(
self, state: State, context: ApplicationContext, inputs: Dict[str, Any]
) -> SyncOrAsyncGenerator[State]:
for poem_type in state["poem_types"]:
yield state.update(current_draft=None, poem_type=poem_type, feedback=None)
def action(self, state: State, inputs: Dict[str, Any]) -> SubgraphType:
graph = (
GraphBuilder()
from datetime import datetime
from hamilton.function_modifiers import config, extract_fields, pipe_output, step
def _convert_US_to_datatime(date: str) -> datetime:
return datetime.strptime(date, "%m/%d/%Y")
def _convert_EMEA_to_datatime(date: str) -> datetime:
return datetime.strptime(date, "%d/%m/%Y")
@pipe_output(step(_convert_EMEA_to_datatime))
from hamilton.function_modifiers import tag
@tag(team="Research")
def foo()->int:
return 10
@tag(team="Platform")
def bar()->int:
return 100
from datetime import datetime
from hamilton.function_modifiers import extract_fields
def _fetch_dates__EMEA() -> dict:
return {
"a": "31/01/2000",
"b": "28/02/2010",
"c": "30/03/2020",
}
from datetime import datetime
def _fetch_dates__EMEA() -> dict:
return {
"a": "31/01/2000",
"b": "28/02/2010",
"c": "30/03/2020",
}
def _fetch_dates__US() -> dict:
from datetime import datetime
def fetch_dates__EMEA() -> dict:
return {
"a": "31/1/2000",
"b": "28/2/2010",
"c": "30/3/2020",
}
def fetch_dates__US() -> dict:
action, _, state = app.run(
halt_after=["format_results"],
inputs={"query": "What's the weather like in San Francisco?"},
)
print(state["final_output"])