Overview of Kumo AI's Predictive Query Language (PQL) - a SQL-like syntax for developing state-of-the-art predictive analytics. 💡 Subscribe for Latest Courses and Tutorials: https://www.aurelio.ai/subscribe 👋🏼 AI Consulting: https://aurelio.ai 👾 Discord:...
Building recommendation systems is hard. In data science, we can spend months wrangling data, training models, and still end up with mediocre results. That's where Kumo AI comes in — it's a service that abstracts away the complexity of building Graph Neural Networks (GNNs)...
Building recommendation systems is hard. In data science, we can spend months wrangling data, training models, and still end up with mediocre results. That's where Kumo AI comes in — it's a service that abstracts away the complexity of building Graph Neural Networks (GNNs) for predictive analytics.
In this guide, we'll build a complete e-commerce recommendation engine using real H&M data with 33 million transactions. By the end, we'll have a system that can:
- Predict customer lifetime value for the next 30 days
- Generate personalized product recommendations
- Forecast purchase behavior to identify active customers
All of this can be done in just a couple of hours - not months.
📌 Code:
https://github.com/aurelio-labs/cookbook/blob/main/recsys/ecommerce/kumo-hm/kumo-hm.ipynb
💡 Kumo AI: https://bit.ly/4gduL04
📖 Article: https://www.jamesbriggs.io/kumo-ecommerce
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#datascience #machinelearning #python
00:00 Kumo AI and GNNs
07:39 Kumo Setup
12:17 Kumo Connectors
14:45 Getting Data into BigQuery
20:39 Building the Graph in Kumo
28:34 Predictive Query Language (PQL)
35:01 Personalized Product Recommendations
38:44 Predicting Purchase Volume
41:44 Making Predictions with Kumo
27:10 Analysis and Prediction with Kumo
52:36 When to use Kumo
Ecom was always at the forefront of ML and data science in the past, but I felt like the latest AI and agentic wave had left ecom behind — but after building with KumoRFM I'm convinced ecommerce + GNNs + agents is going to be big — wdyt? Full video here:...
Ecom was always at the forefront of ML and data science in the past, but I felt like the latest AI and agentic wave had left ecom behind — but after building with KumoRFM I'm convinced ecommerce + GNNs + agents is going to be big — wdyt?
Full video here: https://youtu.be/MFp9vjr6rgA
KumoRFM: https://bit.ly/47x3WSk
💡 Subscribe for Latest Courses and Tutorials:
https://www.aurelio.ai/subscribe
👋🏼 AI Consulting:
https://aurelio.ai
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
In this video we explore the use of agents and LLMs for ecommerce and develop our own advanced agent enabling advanced data science and analytics for ecommerce. We use Kumo AI's Relational Foundation Model (RFM) to produce insanely high quality predictions super fast,...
In this video we explore the use of agents and LLMs for ecommerce and develop our own advanced agent enabling advanced data science and analytics for ecommerce.
We use Kumo AI's Relational Foundation Model (RFM) to produce insanely high quality predictions super fast, enabling a conversational experience with what is essentially an expert data science agent.
📌 Article: https://www.jamesbriggs.io/ecommerce-agent
📌 Notebook Code: https://github.com/aurelio-labs/cookbook/tree/main/gen-ai/agents/ecommerce-agent
📍 AI App Repo: https://github.com/jamescalam/ecommerce-agent
💡 KumoRFM: https://bit.ly/47x3WSk
📊 Kumo AI: https://bit.ly/4gduL04
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#datascience #machinelearning #python
00:00 Ecommerce and AI
01:46 Agents for Ecommerce
02:34 KumoRFM
03:24 Talking with a KumoRFM Agent
10:58 Using KumoRFM
16:51 Making Predictions with KumoRFM
19:02 Agentic Predictions
22:34 Query Dataframes Tool
25:23 Query KumoRFM Tool
26:50 Building the Agent Graph
36:12 Testing our Ecommerce Agent
46:14 Ecommerce Agent App Setup
48:00 Ecommerce and Agents
Agents SDK provides various approaches for tool use, including pre-built tools and all the features we need to develop custom tools. In this chapter, we'll learn everything there is about tools, tool-use, and agents-as-tools. 📌 Article and Code:...
Agents SDK provides various approaches for tool use, including pre-built tools and all the features we need to develop custom tools. In this chapter, we'll learn everything there is about tools, tool-use, and agents-as-tools.
📌 Article and Code:
https://www.jamesbriggs.io/agents-sdk-tools
💡 Subscribe for Latest Courses and Tutorials:
https://www.aurelio.ai/subscribe
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#artificialintellegence #openai #ai #aiagents
00:00 Agents SDK Tools
00:59 Using Prebuilt Tools
02:30 Custom Tools
09:36 FunctionTool Object
13:43 Agents as Tools
Agents SDK integrates with OpenAI's built-in Traces dashboard found within the OpenAI Platform for out-of-the-box observability and telemetry of our AI agents. In this video, we'll take a look at both the default tracing enabled by default whenever we use Agents SDK (with an...
Agents SDK integrates with OpenAI's built-in Traces dashboard found within the OpenAI Platform for out-of-the-box observability and telemetry of our AI agents.
In this video, we'll take a look at both the default tracing enabled by default whenever we use Agents SDK (with an OpenAI API key present), and custom tracing.
📖 Full Course:
https://www.aurelio.ai/course/agents-sdk
🔗 Article:
https://www.jamesbriggs.io/agents-sdk-tracing
📌 Code:
https://github.com/aurelio-labs/agents-sdk-course/blob/main/chapters/02-tracing.ipynb
💡 Subscribe for Latest Courses and Tutorials:
https://www.aurelio.ai/subscribe
👋🏼 AI Consulting:
https://aurelio.ai
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#ai #aiagents #programming
00:00 Agents SDK Tracing
00:17 OpenAI Traces Dashboard
02:03 Agents SDK Tracing Setup
03:00 Access to OpenAI Traces
04:03 Creating Agents SDK Traces
05:29 Custom Traces
08:24 Tracing Agent Tools
12:15 Conclusion
Prompting is an essential component when working with LLMs, and Agents SDK naturally has its own way of handling various components of prompts. In this chapter, we'll examine how to utilise static and dynamic prompting, as well as how to correctly use system, user, assistant,...
Prompting is an essential component when working with LLMs, and Agents SDK naturally has its own way of handling various components of prompts. In this chapter, we'll examine how to utilise static and dynamic prompting, as well as how to correctly use system, user, assistant, and tool prompts to build event-based conversations, not interaction-based conversations. Then, we'll see how these come together to create advanced conversational agents that use chat history the right way.
📌 Code: https://github.com/aurelio-labs/agents-sdk-course/blob/main/chapters/01-prompting.ipynb
📖 Article: https://www.jamesbriggs.io/agents-sdk-prompting
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#aiagents #openai #ai #coding #artificialintellegence #programming
00:00 OpenAI Agents SDK
00:56 Agents SDK Setup
01:56 Static Instructions
06:03 Dynamic Prompts
08:38 Rethinking Agentic Chat History
11:09 Message Types
20:25 How to Use SDK Message Types
22:09 Developer Messages
24:31 Assistant Messages
26:37 Chat History
27:53 Function Calls
31:03 Conclusion for Agents SDK Prompting
Full video https://youtu.be/9nwWJWyxSyk 💡 Subscribe for Latest Courses and Tutorials: https://www.aurelio.ai/subscribe 👋🏼 AI Consulting: https://aurelio.ai 👾 Discord: https://discord.gg/c5QtDB9RAP Twitter: https://twitter.com/jamescalam LinkedIn:...
Full video https://youtu.be/9nwWJWyxSyk
💡 Subscribe for Latest Courses and Tutorials:
https://www.aurelio.ai/subscribe
👋🏼 AI Consulting:
https://aurelio.ai
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#ai #programming #aiagents
In this video, we'll develop a full AI Agent application using Python, LangChain, FastAPI, AI agents, tools, streaming, and more. 🔗 Full Course: https://www.aurelio.ai/course/langchain 📌 Code: https://github.com/aurelio-labs/langchain-course/tree/main/chapters/09-capstone 💡...
In this video, we'll develop a full AI Agent application using Python, LangChain, FastAPI, AI agents, tools, streaming, and more.
🔗 Full Course: https://www.aurelio.ai/course/langchain
📌 Code: https://github.com/aurelio-labs/langchain-course/tree/main/chapters/09-capstone
💡 Subscribe for Latest Courses and Tutorials:
https://www.aurelio.ai/subscribe
👋🏼 AI Consulting:
https://aurelio.ai
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#ai #langchain #programming #aiagents
00:00 End-to-End LangChain Agent
01:39 Setup the AI App
04:37 API Setup
11:28 API Token Generator
15:57 Agent Executor in API
34:03 Async SerpAPI Tool
40:08 Running the App
11:44 Course Completion
Streaming is a common pattern in AI applications. We've all seen AI interfaces where answers from AI chatbots appear on the screen as a word-by-word stream of information. This word-by-word stream can look nice but provides many more benefits. Streamed text feels more natural...
Streaming is a common pattern in AI applications. We've all seen AI interfaces where answers from AI chatbots appear on the screen as a word-by-word stream of information.
This word-by-word stream can look nice but provides many more benefits. Streamed text feels more natural to the user, which means the user can begin reading a response sooner.
The Time-to-First-Token of models like gpt-4.1-mini is very low (just 1-2 seconds in many cases). However, the full generation time (or Time-to-Last-Token, TTLT) can vary significantly. When generating long responses from gpt-4.1-mini, a TTLT of 10-20 seconds is typical.
A significant difference exists in having users wait 1-2 seconds vs 10-20 seconds. But beyond this, streaming also allows us to send intermediate steps to our interfaces. Suppose an agent uses various tools and/or takes multiple steps to generate a final response. In that case, we can use streaming to send this information to our application, allowing us to render UI components that inform the user about the agent's actions.
Using these intermediate step components, we provide continual feedback to the user, preventing them from being stuck staring at a blank screen. These components also provide us with an interface to provide more information to the user, such as research sources or results from intermediate calculations.
In this chapter, we will introduce LangChain's async streaming. Async streaming is an essential feature for APIs wanting to support real-time information streaming and enable the enhanced user experience described above.
🔗 Full Course: https://www.aurelio.ai/course/langchain
📌 Article and Code: https://www.jamesbriggs.io/langchain-streaming
💡 Subscribe for Latest Courses and Tutorials:
https://www.aurelio.ai/subscribe
👋🏼 AI Consulting:
https://aurelio.ai
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#ai #langchain #programming #aiagents
00:00 LangChain Streaming
00:54 Streaming for AI
06:08 Basic LangChain Streaming
10:16 Streaming with Agents
28:13 Custom Agent and Streaming
31:13 Streaming to an API
This chapter will introduce LangChain's Expression Langauge (LCEL). We'll focus on understanding how LCEL works under the hood and how it is implemented with OpenAI's LLMs. We'll compare LCEL against the traditional methods. We will build a pipeline where the user inputs a...
This chapter will introduce LangChain's Expression Langauge (LCEL). We'll focus on understanding how LCEL works under the hood and how it is implemented with OpenAI's LLMs.
We'll compare LCEL against the traditional methods. We will build a pipeline where the user inputs a specific topic, and then the LLM looks for and returns a report on the specified topic. This generates a research report for the user.
🔗 Full Course: https://www.aurelio.ai/course/langchain
📌 Article and Code: https://www.jamesbriggs.io/langchain-lcel
💡 Subscribe for Latest Courses and Tutorials:
https://www.aurelio.ai/subscribe
👋🏼 AI Consulting:
https://aurelio.ai
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#ai #langchain #programming #aiagents
00:00 LangChain Expression Language
00:58 Traditional Chains in LangChain
03:02 LangChain LCEL
03:55 LCEL Pipe Operator
09:09 LangChain RunnableLambda
12:41 LCEL Runnable Parallel and Passthrough
In this video, we will continue from the introduction to agents and dive deeper into agents. Learning how to build our custom agent execution loop for v0.3 of LangChain. When we talk about agents, a significant part of an "agent" is simple code logic, iteratively rerunning...
In this video, we will continue from the introduction to agents and dive deeper into agents. Learning how to build our custom agent execution loop for v0.3 of LangChain.
When we talk about agents, a significant part of an "agent" is simple code logic, iteratively rerunning LLM calls and processing their output. The exact logic varies significantly, but one well-known example is the ReAct agent.
Reason + Action (ReAct) agents use iterative reasoning and action steps to incorporate chain-of-thought and tool-use into their execution. During the reasoning step, the LLM generates the steps to take to answer the query. Next, the LLM generates the action input, which our code logic parses into a tool call.
Following our action step, we get an observation from the tool call. Then, we feed the observation back into the agent executor logic for a final answer or further reasoning and action steps.
The agent and agent executor we will be building will follow this pattern.
🔗 Full Course: https://www.aurelio.ai/course/langchain
📌 Article and code: https://www.jamesbriggs.io/langchain-agent-executor
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#ai #coding #aiagents #langchain
00:00 LangChain v0.3 Agent Executor
09:26 Creating an Agent with LCEL
13:53 Executing Tool Calls
16:58 Agentic Final Answers
25:58 Building a Custom Agent Executor
32:47 Executing Multiple Tool Calls
In this chapter, we will introduce LangChain's Agents, adding the ability to use tools such as search and calculators to complete tasks that normal LLMs cannot fulfil. We will be using OpenAI's gpt-4o-mini. 🔗 Full Course: https://www.aurelio.ai/course/langchain 📌 Article and...
In this chapter, we will introduce LangChain's Agents, adding the ability to use tools such as search and calculators to complete tasks that normal LLMs cannot fulfil. We will be using OpenAI's gpt-4o-mini.
🔗 Full Course: https://www.aurelio.ai/course/langchain
📌 Article and code: https://www.jamesbriggs.io/langchain-agents-intro
💡 Subscribe for Latest Courses and Tutorials:
https://www.aurelio.ai/subscribe
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#ai #coding #aiagents #langchain
00:00 LangChain Agents 101
01:27 Introduction to Tools
07:05 Creating an Agent
11:27 Agent Executor
18:02 Web Search Agent
Conversational memory allows our chatbots and agents to remember previous interactions within a conversation. Without conversational memory, our chatbots would only ever be able to respond to the last message they received, essentially forgetting all previous messages with...
Conversational memory allows our chatbots and agents to remember previous interactions within a conversation. Without conversational memory, our chatbots would only ever be able to respond to the last message they received, essentially forgetting all previous messages with each new message.
Naturally, conversations require our chatbots to be able to respond over multiple interactions and refer to previous messages to understand the context of the conversation.
LangChain versions 0.0.x consisted of various conversational memory types. Most of these are due to deprecation, but they still hold value in understanding the different approaches to building conversational memory.
Throughout the video, we will refer to these older memory types and then rewrite them for LangChain v0.3 (the latest version in 2025) using the recommended RunnableWithMessageHistory class. We will learn about:
- ConversationBufferMemory
- ConversationBufferWindowMemory
- ConversationSummaryMemory
- ConversationSummaryBufferMemory
We'll work through each of these memory types in turn and rewrite each one using the RunnableWithMessageHistory class.
🔗 Full Course: https://www.aurelio.ai/course/langchain
📌 Article and code: https://www.jamesbriggs.io/langchain-conversational-memory
💡 Subscribe for Latest Courses and Tutorials:
https://www.aurelio.ai/subscribe
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#ai #coding #aiagents #langchain
00:00 Conversational Memory in LangChain
01:12 LangChain Chat Memory Types
04:26 LangChain ConversationBufferMemory
08:23 Buffer Memory with LCEL
13:14 LangChain ConversationBufferWindowMemory
16:01 Buffer Window Memory with LCEL
22:32 LangChain ConversationSummaryMemory
25:17 Summary Memory with LCEL
30:12 Token Usage in LangSmith
32:08 Conversation Summary Buffer Memory
34:36 Summary Buffer with LCEL
Until 2021, to use an AI model for a specific use case, we would need to fine-tune the model weights themselves. That would require huge training data and significant computate to fine-tune any reasonably performing model. Instruction-fine-tuned large language models (LLMs)...
Until 2021, to use an AI model for a specific use case, we would need to fine-tune the model weights themselves. That would require huge training data and significant computate to fine-tune any reasonably performing model.
Instruction-fine-tuned large language models (LLMs) changed this fundamental rule of applying AI models to new use cases. Rather than needing to either train a model from scratch or fine-tune an existing model, these new LLMs could adapt incredibly well to a new problem or use case with nothing more than a prompt change.
Prompts allow us to completely change the functionality of an AI pipeline. Through natural language, we tell our LLM what it needs to do, and with the right AI pipeline and prompting, it often works.
LangChain naturally has many functionalities geared towards helping us build our prompts. We can build dynamic prompting pipelines that modify the structure and content of what we feed into our LLM based on essentially any parameter we would like. In this example, we'll explore the essentials of prompting in LangChain and apply this in a demo Retrieval Augmented Generation (RAG) pipeline.
🔗 Full Course: https://www.aurelio.ai/course/langchain
📌 Article and code: https://www.jamesbriggs.io/langchain-prompts
👋🏼 AI Consulting:
https://aurelio.ai
👾 Discord:
https://discord.gg/c5QtDB9RAP
Twitter: https://twitter.com/jamescalam
LinkedIn: https://www.linkedin.com/in/jamescalam/
#ai #coding #aiagents #langchain
00:00 Prompts are Fundamental to LLMs
02:13 Building Good LLM Prompts
07:13 LangChain Prompts Code Setup
11:36 Using our LLM with Templates
16:54 Few-shot Prompting
23:11 Chain of Thought Prompting