← Extractions

Building LLM-Powered Applications in Ruby — Andrei Bondarev at wroclove.rb 2024

Andrei Bondarev presents langchainrb and walks through building an LLM-powered AI assistant in Ruby that orchestrates e-commerce business logic through tools and function calling. He covers generative AI fundamentals, agents, RAG, vector embeddings, evaluation (RAGAS), and argues narrow focused agents with closed task sets are the near-term sweet spot.

Model
claude-opus-4-7
Ingestion
65d2b17a
Input tokens
155,333
fresh
78,953
cached
65,193
cache write
11,187
Output tokens
14,361
Duration
199.6s
Roundtrips
5
Tool calls
16
Cost
$0.00
Nodes/edges extracted
38 / 57
Read set (nodes/edges)
65 / 2

Nodes (38)

create Mistral AI company
kind (empty) company
name (empty) Mistral AI
slug (empty) mistral-ai
attrs (empty) {"country" => "France", "industry" => "AI"}
description (empty) French LLM startup (transcribed as 'MCH'). Mentioned as one of the smaller providers langchainrb aims to stay vendor-...
short_description (empty) French AI startup providing LLMs.
create OpenAI Ada tool
kind (empty) tool
name (empty) OpenAI Ada
slug (empty) openai-ada
attrs (empty) {"category" => "service"}
description (empty) OpenAI's embedding model. Produces vector embeddings of length 1536, used for semantic/vector search in RAG systems.
short_description (empty) OpenAI's 1536-dimensional text embedding model.
create ruby-openai tool
kind (empty) tool
name (empty) ruby-openai
slug (empty) ruby-openai
attrs (empty) {"category" => "library", "language" => "Ruby"}
description (empty) Underlying Ruby gem wrapping the OpenAI API. Used by the Nerds and Threads demo (pulled in alongside langchainrb).
short_description (empty) Ruby gem providing a client for the OpenAI API.
update Andrei Bondarev person
attrs (empty) {"location" => "South Florida, USA", "years_experience" => "13+"}
description Conference speaker. Ruby developer based in South Florida. Started his career 13 years ago building Rails applications for the US Departm...
short_description Conference speaker. Ruby developer, creator of langchainrb; speaker on LLM-powered Ruby applications.
update Building LLM powered applications in Ruby talk
description Talk at wroclove.rb 2024. Andrei Bondarev's wroclove.rb 2024 single-speaker talk. Frames generative AI as about to become a standard part of ev...
short_description Talk at wroclove.rb 2024. Andrei Bondarev's wroclove.rb 2024 talk on langchainrb, agents, and RAG in Ruby.
create langchainrb tool
kind (empty) tool
name (empty) langchainrb
slug (empty) langchainrb
attrs (empty) {"license" => "open-source", "category" => "library", "language" => "Ruby"}
description (empty) Open-source Ruby gem created and maintained by Andrei Bondarev. Described as the most popular Ruby solution to build ...
short_description (empty) Open-source Ruby gem for building LLM-powered applications, agents, and RAG systems.
create Generative AI concept
kind (empty) concept
name (empty) Generative AI
slug (empty) generative-ai
attrs (empty) {"category" => "architecture"}
description (empty) Type of artificial intelligence that generates text, audio, video, etc. The talk focuses on text generation. Enabled ...
short_description (empty) AI that generates text, audio, video, and other content.
create Large Language Models concept
kind (empty) concept
name (empty) Large Language Models
slug (empty) large-language-models
attrs (empty) {"category" => "architecture"}
description (empty) Deep artificial neural networks with general-purpose language understanding and generation capabilities. Exploded in ...
short_description (empty) Deep-learning neural networks with general-purpose language understanding and generation.
create Transformers concept
kind (empty) concept
name (empty) Transformers
slug (empty) transformers
attrs (empty) {"category" => "architecture"}
description (empty) Neural-network architecture introduced in the 2017 Google paper 'Attention Is All You Need'. Underlies modern LLMs; A...
short_description (empty) Neural network architecture underlying modern large language models.
create Attention Is All You Need resource
kind (empty) resource
name (empty) Attention Is All You Need
slug (empty) attention-is-all-you-need
attrs (empty) {"type" => "article", "year" => "2017"}
description (empty) 2017 Google research paper that introduced the Transformer architecture, triggering the explosion in LLM popularity.
short_description (empty) 2017 Google paper introducing the Transformer architecture.
create AI Agent concept
kind (empty) concept
name (empty) AI Agent
slug (empty) ai-agent
attrs (empty) {"category" => "architecture"}
description (empty) Autonomous or semi-autonomous general-purpose LLM-powered program. Uses tools — APIs and integrations — via function ...
short_description (empty) Autonomous or semi-autonomous LLM-powered program that uses tools via function calling.
create Retrieval Augmented Generation concept
kind (empty) concept
name (empty) Retrieval Augmented Generation
slug (empty) retrieval-augmented-generation
attrs (empty) {"category" => "pattern"}
description (empty) Methodology (RAG) for overcoming LLM knowledge cut-offs and integrating proprietary corporate knowledge. Pipeline: em...
short_description (empty) Inject relevant proprietary knowledge into the prompt so the LLM answers with current, specific data.
create Vector Embeddings concept
kind (empty) concept
name (empty) Vector Embeddings
slug (empty) vector-embeddings
attrs (empty) {"category" => "architecture"}
description (empty) Machine-learning technique representing data as vectors in high-dimensional space, clustered by semantic meaning. LLM...
short_description (empty) ML-generated numeric vectors that cluster data by semantic meaning.
create Vector Database concept
kind (empty) concept
name (empty) Vector Database
slug (empty) vector-database
attrs (empty) {"category" => "architecture"}
description (empty) Data store indexing vector embeddings and supporting similarity search over them. Used to index proprietary corporate...
short_description (empty) Database that indexes vector embeddings for similarity search.
create Prompt Alchemy concept
kind (empty) concept
name (empty) Prompt Alchemy
slug (empty) prompt-alchemy
attrs (empty) {"category" => "practice"}
description (empty) Andrei's preferred term for 'prompt engineering'. He argues it is not an engineering discipline — it is alchemy, beca...
short_description (empty) Andrei's name for so-called 'prompt engineering' — unreliable, non-scientific prompt tweaking.
create Jailbreaking concept
kind (empty) concept
name (empty) Jailbreaking
slug (empty) jailbreaking
attrs (empty) {"category" => "practice"}
description (empty) Techniques for getting an LLM to do or say unintended things. Anthropic coined the term 'many-shot jailbreaking': lis...
short_description (empty) Tricking an LLM into doing or saying unintended things.
create Hallucinations concept
kind (empty) concept
name (empty) Hallucinations
slug (empty) hallucinations
attrs (empty) {"category" => "practice"}
description (empty) Failure mode where LLMs produce plausible but incorrect answers. Often caused by knowledge cut-offs (e.g. GPT-4 train...
short_description (empty) LLM outputs that are fluent but factually wrong or fabricated.
create RAGAS concept
kind (empty) concept
name (empty) RAGAS
slug (empty) ragas
attrs (empty) {"category" => "methodology"}
description (empty) RAG Assessment: a quantitative technique to evaluate RAG systems. Combines three metrics into a single score: faithfu...
short_description (empty) Quantitative RAG evaluation combining faithfulness, context relevance, and answer relevance.
create Many-shot Jailbreaking Paper resource
kind (empty) resource
name (empty) Many-shot Jailbreaking Paper
slug (empty) many-shot-jailbreaking-paper
attrs (empty) {"type" => "article"}
description (empty) Paper out of Anthropic coining the term 'many-shot jailbreaking': tricking an LLM into harmful completions by prepend...
short_description (empty) Anthropic paper coining many-shot jailbreaking of LLMs.
create OpenAI company
kind (empty) company
name (empty) OpenAI
slug (empty) openai
attrs (empty) {"industry" => "AI"}
description (empty) AI company behind GPT-4 (described in the talk as the current leader among LLMs), ChatGPT, and the Ada embedding mode...
short_description (empty) AI research lab and maker of GPT models and the Ada embedding model.
create Anthropic company
kind (empty) company
name (empty) Anthropic
slug (empty) anthropic
attrs (empty) {"industry" => "AI"}
description (empty) AI company that coined the term 'many-shot jailbreaking' and published the corresponding paper on LLM jailbreaking te...
short_description (empty) AI safety company that published the many-shot jailbreaking paper.
update Google company
attrs {"industry" => "internet"} {"industry" => "technology"}
description Referenced for a classic experiment slowing search response time by 100ms for a user subgroup; over weeks, bounce/beh... Technology company. Published the 2017 'Attention Is All You Need' paper that introduced the Transformer architecture...
short_description Search and cloud company whose latency experiments are cited. Technology company; published the 2017 'Attention Is All You Need' Transformer paper.
create Andreessen Horowitz company
kind (empty) company
name (empty) Andreessen Horowitz
slug (empty) andreessen-horowitz
attrs (empty) {"industry" => "venture capital"}
description (empty) Venture capital firm (a16z). Andrei cites their vision that generative AI becomes a crucial part of application archi...
short_description (empty) Venture capital firm (a16z) with influential AI-stack vision.
create Air Canada company
kind (empty) company
name (empty) Air Canada
slug (empty) air-canada
attrs (empty) {"industry" => "aviation"}
description (empty) Airline. Cited by Andrei as an example of the risks of deploying LLM chatbots: Air Canada's chatbot gave a customer w...
short_description (empty) Airline whose chatbot gave a customer wrong information, leading to a lawsuit.
create General Motors company
kind (empty) company
name (empty) General Motors
slug (empty) general-motors
attrs (empty) {"industry" => "automotive"}
description (empty) US automaker. Cited as an example of the reputational risk of AI chatbots: a user convinced a General Motors chatbot ...
short_description (empty) Automaker whose chatbot was tricked into 'selling' a car for $1.
create US Department of Health and Human Services company
kind (empty) company
name (empty) US Department of Health and Human Services
slug (empty) us-department-of-health-and-human-services
attrs (empty) {"industry" => "government"}
description (empty) US federal government department. Andrei's first employer, where he built public-facing Rails applications for millio...
short_description (empty) US federal department where Andrei built public-facing Rails apps early in his career.
create USA Today company
kind (empty) company
name (empty) USA Today
slug (empty) usa-today
attrs (empty) {"industry" => "media"}
description (empty) US national newspaper. Andrei worked on 'one of the most amazing Rails teams at the time' at USA Today after being hi...
short_description (empty) US national newspaper with a Rails engineering team Andrei worked on.
create Sean Schofield person
kind (empty) person
name (empty) Sean Schofield
slug (empty) sean-schofield
description (empty) Original author of the Spree open-source e-commerce platform. Hired Andrei Bondarev onto the Rails team at USA Today.
short_description (empty) Original author of Spree e-commerce; hired Andrei at USA Today.
update Spree tool
description Open-source e-commerce framework built on top of Ruby on Rails. Started in 2008 (predates GitHub's public launch) wit... Open-source Rails e-commerce platform originally authored by Sean Schofield.
short_description Open-source Rails-based e-commerce framework; 15 years old, now maintained by Upside. Open-source Ruby on Rails e-commerce platform.
create Sandi Metz person
kind (empty) person
name (empty) Sandi Metz
slug (empty) sandi-metz
description (empty) Prominent Ruby author. Wrote 'Practical Object-Oriented Design in Ruby' (POODR), cited by Andrei as an example of the...
short_description (empty) Ruby author; wrote Practical Object-Oriented Design in Ruby (POODR).
create Python tool
kind (empty) tool
name (empty) Python
slug (empty) python
attrs (empty) {"category" => "language"}
description (empty) Programming language dominant in AI/ML research and library ecosystems. Andrei contrasts Ruby's pragmatic community w...
short_description (empty) General-purpose programming language dominant in AI/ML.
create OpenAI GPT-4 tool
kind (empty) tool
name (empty) OpenAI GPT-4
slug (empty) openai-gpt-4
attrs (empty) {"category" => "service"}
description (empty) OpenAI's flagship large language model. Described as the current leader among LLMs (though leadership changes weekly)...
short_description (empty) OpenAI's flagship LLM; current leader among large language models.
create Nerds and Threads project
kind (empty) project
name (empty) Nerds and Threads
slug (empty) nerds-and-threads
attrs (empty) {"status" => "active", "license" => "open-source"}
description (empty) Simulated e-commerce store used as a live-coding demo during the talk. Sells graphic nerdy t-shirts for work-from-hom...
short_description (empty) Demo e-commerce AI assistant built on langchainrb for Andrei's wroclove.rb 2024 talk.
create Prompts as Business Logic takeaway
kind (empty) takeaway
name (empty) Prompts as Business Logic
slug (empty) prompts-as-business-logic
attrs (empty) {"type" => "insight"}
description (empty) Andrei's proposed shift from the 'old world' (business logic in fat models or service objects sprinkled across the pr...
short_description (empty) Put business SOPs into prompts and let the LLM orchestrate execution across tools.
create Narrow Agent Responsibilities For Reliability takeaway
kind (empty) takeaway
name (empty) Narrow Agent Responsibilities For Reliability
slug (empty) narrow-agent-responsibilities-for-reliability
attrs (empty) {"type" => "recommendation"}
description (empty) AI agents become more reliable as the number of tasks/responsibilities they are responsible for shrinks. Focused sing...
short_description (empty) Shrink an agent's task set to make it reliable; avoid open chat UIs in production.
create Port Python Libraries With ChatGPT takeaway
kind (empty) takeaway
name (empty) Port Python Libraries With ChatGPT
slug (empty) port-python-libraries-with-chatgpt
attrs (empty) {"type" => "recommendation"}
description (empty) When a Ruby developer wants a utility that only exists in Python, they can paste the code file by file into ChatGPT, ...
short_description (empty) Paste missing Python libraries into ChatGPT and have it rewrite them in Ruby.
create Open Source Maintainer Lessons takeaway
kind (empty) takeaway
name (empty) Open Source Maintainer Lessons
slug (empty) open-source-maintainer-lessons
attrs (empty) {"type" => "recommendation"}
description (empty) Lessons from running langchainrb: be responsive when people ask questions, open issues, or submit PRs — you have a fi...
short_description (empty) Be responsive, friendly, welcoming and helpful — attention spans are finite.
create Generate code once vs instruct LLM per request question
kind (empty) question
name (empty) Generate code once vs instruct LLM per request
slug (empty) generate-code-once-vs-instruct-llm-per-request
attrs (empty) {"answer_summary" => "Interesting angle. Many companies pursue code generation. Andrei is more interested in generati...
description (empty) Audience question: in the demo, instructions are sent to the LLM per incoming request — could you instead ask the LLM...
short_description (empty) Trade-offs between generating Ruby code once vs sending instructions to the LLM on every request.

Edges (57)

update Andrei BondarevauthoredBuilding LLM powered applications in Ruby
context (empty) Andrei delivered this single-speaker talk.
update Building LLM powered applications in Rubypresented_atwroclove.rb 2024
context (empty) Talk given at wroclove.rb 2024 in Wrocław.
create Andrei Bondarevworks_onlangchainrb
attrs (empty) {"role" => "creator/maintainer"}
context (empty) Creator and maintainer of the langchainrb Ruby gem.
relation (empty) works_on
source_node_id (empty) b52ea8c0-56dc-40b9-ab39-4852415b5079
target_node_id (empty) fbc9b011-f6f3-4a11-bdea-5b88258eb5c4
create Andrei Bondarevworks_atUS Department of Health and Human Services
attrs (empty) {"role" => "Rails developer"}
context (empty) Andrei's first Rails job, building public-facing apps for millions of consumers.
relation (empty) works_at
source_node_id (empty) b52ea8c0-56dc-40b9-ab39-4852415b5079
target_node_id (empty) 24a30aae-988c-4bde-8ebd-778da256f511
create Andrei Bondarevworks_atUSA Today
attrs (empty) {"role" => "Rails developer"}
context (empty) Worked on USA Today's Rails team after being hired by Sean Schofield.
relation (empty) works_at
source_node_id (empty) b52ea8c0-56dc-40b9-ab39-4852415b5079
target_node_id (empty) 86797840-5e4c-43c2-af62-6e80598602d2
create Sean SchofieldauthoredSpree
context (empty) Original author of the Spree e-commerce platform.
relation (empty) authored
source_node_id (empty) 9d1e93ed-a77f-4725-b04a-9ec30a89dd91
target_node_id (empty) bb8d5927-6044-47cf-b709-85ad5a42d86e
create Sean Schofieldworks_atUSA Today
context (empty) Hired Andrei onto USA Today's Rails team.
relation (empty) works_at
source_node_id (empty) 9d1e93ed-a77f-4725-b04a-9ec30a89dd91
target_node_id (empty) 86797840-5e4c-43c2-af62-6e80598602d2
create Andrei Bondarevworks_onNerds and Threads
attrs (empty) {"role" => "author"}
context (empty) Built the Nerds and Threads demo AI assistant for the talk.
relation (empty) works_on
source_node_id (empty) b52ea8c0-56dc-40b9-ab39-4852415b5079
target_node_id (empty) 2c9c1dbd-595a-44e7-978e-deb27a31e41f
create Nerds and Threadsuseslangchainrb
context (empty) Demo built on langchainrb's Assistant and Tool abstractions.
relation (empty) uses
source_node_id (empty) 2c9c1dbd-595a-44e7-978e-deb27a31e41f
target_node_id (empty) fbc9b011-f6f3-4a11-bdea-5b88258eb5c4
create Nerds and Threadsusesruby-openai
context (empty) Underlying OpenAI Ruby client pulled in by the demo.
relation (empty) uses
source_node_id (empty) 2c9c1dbd-595a-44e7-978e-deb27a31e41f
target_node_id (empty) c01d61d8-d891-4dec-bfc9-a58bc5ecc39c
create Nerds and ThreadsusesSQLite
context (empty) Demo backed by a SQLite database with products, orders, order_items, and customers tables.
relation (empty) uses
source_node_id (empty) 2c9c1dbd-595a-44e7-978e-deb27a31e41f
target_node_id (empty) a65d4872-7d76-4774-a7d5-e29e615de75a
create Nerds and ThreadsusesOpenAI GPT-4
context (empty) Demo's LLM client uses the gpt-4-turbo chat completion model.
relation (empty) uses
source_node_id (empty) 2c9c1dbd-595a-44e7-978e-deb27a31e41f
target_node_id (empty) f6302592-ec19-48ca-8665-40f53918fbc4
create Building LLM powered applications in Rubyaboutlangchainrb
context (empty) Talk centres on langchainrb as the Ruby solution for LLM-powered apps.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) fbc9b011-f6f3-4a11-bdea-5b88258eb5c4
create Building LLM powered applications in RubyaboutGenerative AI
context (empty) Introduces generative AI as the context for Ruby applications.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 4465f7a6-fe82-426f-b4d5-7e73a9f185f2
create Building LLM powered applications in RubyaboutLarge Language Models
context (empty) Explains LLMs and their strengths.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 5f3ec468-0bb7-43dd-aa34-63bd8658a111
create Building LLM powered applications in RubyaboutTransformers
context (empty) Names Transformers as the underlying LLM architecture.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 30d36a23-68a3-4b18-8081-57cf5df77aa2
create Building LLM powered applications in RubyaboutAI Agent
context (empty) Covers AI agents, function calling, and the focus/reliability trade-off.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 54eb5591-9778-4e71-b4d1-e195e22bd70f
create Building LLM powered applications in RubyaboutRetrieval Augmented Generation
context (empty) Explains naive RAG and advanced multi-index strategies.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 97c36266-f46d-4e90-a9b7-9cf02f52208a
create Building LLM powered applications in RubyaboutVector Embeddings
context (empty) Describes embedding models and 1536-dimensional vector spaces.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 63bda7a3-558c-412f-9f2b-de5dc79f2bec
create Building LLM powered applications in RubyaboutVector Database
context (empty) Vector DBs used as the similarity-search substrate for RAG.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) d32afd31-d214-4384-90ac-8c70afe6b0c9
create Building LLM powered applications in RubyaboutRAGAS
context (empty) Introduced as a quantitative way to evaluate RAG systems.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 59a5240e-0698-409a-8ff7-b0eb5f048b19
create Building LLM powered applications in RubyaboutPrompt Alchemy
context (empty) Andrei renames 'prompt engineering' to 'prompt alchemy' and argues it's not engineering.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 2e1a6c99-83a1-4e6c-af44-e59179d9483e
create Building LLM powered applications in RubyaboutJailbreaking
context (empty) Covers jailbreaking techniques including many-shot jailbreaking.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 066c650c-1426-4bd8-a55e-d5d6bea81d8f
create Building LLM powered applications in RubyaboutHallucinations
context (empty) Discusses hallucinations and knowledge cut-offs as motivation for RAG.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 9171d19a-2db5-4e67-b9c6-0c57f46ef1c5
create Building LLM powered applications in RubyaboutNerds and Threads
context (empty) Live-coding demo central to the talk.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 2c9c1dbd-595a-44e7-978e-deb27a31e41f
create Building LLM powered applications in RubyaboutAttention Is All You Need
context (empty) Names the 2017 Google paper that kicked off modern LLMs.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 29ed8482-fa9b-4e86-a1ac-d07971318fa5
create Building LLM powered applications in RubyaboutMany-shot Jailbreaking Paper
context (empty) References Anthropic's many-shot jailbreaking paper.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 8a338a48-4977-4bc2-b0e4-8a913ebd8beb
create Large Language Modelsrelated_toTransformers
context (empty) LLMs are built on the Transformer architecture.
relation (empty) related_to
source_node_id (empty) 5f3ec468-0bb7-43dd-aa34-63bd8658a111
target_node_id (empty) 30d36a23-68a3-4b18-8081-57cf5df77aa2
create Attention Is All You NeedaboutTransformers
context (empty) The paper that introduced the Transformer architecture.
relation (empty) about
source_node_id (empty) 29ed8482-fa9b-4e86-a1ac-d07971318fa5
target_node_id (empty) 30d36a23-68a3-4b18-8081-57cf5df77aa2
create Retrieval Augmented Generationrelated_toVector Embeddings
context (empty) RAG uses embeddings to encode queries and documents.
relation (empty) related_to
source_node_id (empty) 97c36266-f46d-4e90-a9b7-9cf02f52208a
target_node_id (empty) 63bda7a3-558c-412f-9f2b-de5dc79f2bec
create Retrieval Augmented Generationrelated_toVector Database
context (empty) RAG retrieves context via similarity search in a vector DB.
relation (empty) related_to
source_node_id (empty) 97c36266-f46d-4e90-a9b7-9cf02f52208a
target_node_id (empty) d32afd31-d214-4384-90ac-8c70afe6b0c9
create RAGASaboutRetrieval Augmented Generation
context (empty) RAGAS is an evaluation method specifically for RAG systems.
relation (empty) about
source_node_id (empty) 59a5240e-0698-409a-8ff7-b0eb5f048b19
target_node_id (empty) 97c36266-f46d-4e90-a9b7-9cf02f52208a
create Many-shot Jailbreaking PaperaboutJailbreaking
context (empty) Paper coining and characterizing many-shot jailbreaking.
relation (empty) about
source_node_id (empty) 8a338a48-4977-4bc2-b0e4-8a913ebd8beb
target_node_id (empty) 066c650c-1426-4bd8-a55e-d5d6bea81d8f
create AnthropicauthoredMany-shot Jailbreaking Paper
context (empty) Anthropic published the many-shot jailbreaking paper.
relation (empty) authored
source_node_id (empty) 8a4c3ea5-b30a-4f01-a987-c584b8e991ab
target_node_id (empty) 8a338a48-4977-4bc2-b0e4-8a913ebd8beb
create GoogleauthoredAttention Is All You Need
context (empty) 2017 Google research paper.
relation (empty) authored
source_node_id (empty) e4742ca5-3cbb-4688-baae-f26d90b4226b
target_node_id (empty) 29ed8482-fa9b-4e86-a1ac-d07971318fa5
create OpenAIworks_onOpenAI GPT-4
context (empty) OpenAI's flagship LLM.
relation (empty) works_on
source_node_id (empty) 0caf8ad5-00a2-444f-9692-adf40b6d764c
target_node_id (empty) f6302592-ec19-48ca-8665-40f53918fbc4
create OpenAIworks_onOpenAI Ada
context (empty) OpenAI's embedding model.
relation (empty) works_on
source_node_id (empty) 0caf8ad5-00a2-444f-9692-adf40b6d764c
target_node_id (empty) 60a02805-99f3-42c2-9a8c-599f6e525f73
create OpenAIworks_onChatGPT
context (empty) ChatGPT is OpenAI's conversational assistant.
relation (empty) works_on
source_node_id (empty) 0caf8ad5-00a2-444f-9692-adf40b6d764c
target_node_id (empty) ad4d9c22-458a-4d00-947c-e5fb3221ebbf
create langchainrbusesOpenAI GPT-4
context (empty) Supports OpenAI GPT-4 as an LLM provider via a common interface.
relation (empty) uses
source_node_id (empty) fbc9b011-f6f3-4a11-bdea-5b88258eb5c4
target_node_id (empty) f6302592-ec19-48ca-8665-40f53918fbc4
create langchainrbusesRetrieval Augmented Generation
context (empty) Provides add_text + similarity_search + ask for naive RAG.
relation (empty) uses
source_node_id (empty) fbc9b011-f6f3-4a11-bdea-5b88258eb5c4
target_node_id (empty) 97c36266-f46d-4e90-a9b7-9cf02f52208a
create Andrei Bondarevhas_skillRuby
attrs (empty) {"level" => "expert"}
context (empty) 13+ years of Ruby/Rails experience.
relation (empty) has_skill
source_node_id (empty) b52ea8c0-56dc-40b9-ab39-4852415b5079
target_node_id (empty) c7f25b33-06c9-460e-aca7-fe993123ebee
create Andrei BondarevrecommendsRuby
context (empty) Closes the talk arguing Ruby's pragmatism and OOP principles make it a good fit for LLM apps.
relation (empty) recommends
source_node_id (empty) b52ea8c0-56dc-40b9-ab39-4852415b5079
target_node_id (empty) c7f25b33-06c9-460e-aca7-fe993123ebee
create Andrei BondarevrecommendsPractical Object-Oriented Design in Ruby
context (empty) Cited as an example of the strong OOP mental models in the Ruby community.
relation (empty) recommends
source_node_id (empty) b52ea8c0-56dc-40b9-ab39-4852415b5079
target_node_id (empty) 226c4a1d-b99d-4706-b999-4c24b9225a7a
create Sandi MetzauthoredPractical Object-Oriented Design in Ruby
context (empty) Sandi Metz wrote POODR.
relation (empty) authored
source_node_id (empty) e6f72a58-0ada-485c-affe-7e3e005b06c0
target_node_id (empty) 226c4a1d-b99d-4706-b999-4c24b9225a7a
create Building LLM powered applications in RubyaboutAndreessen Horowitz
context (empty) Cites a16z's vision of generative AI as a core tech-stack component.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 9e29819e-4f2f-4a42-bf01-4a2d534f35b2
create Building LLM powered applications in RubyaboutAir Canada
context (empty) Air Canada chatbot lawsuit used as a cautionary example.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 1373fabe-ec57-4d64-a31e-9c7d135ef6c0
create Building LLM powered applications in RubyaboutGeneral Motors
context (empty) GM chatbot agreeing to sell a car for $1 used as a cautionary example.
relation (empty) about
source_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
target_node_id (empty) 1c9d1c7d-2287-4ff3-b778-a70ec77106d8
create Prompts as Business Logicfrom_talkBuilding LLM powered applications in Ruby
context (empty) Takeaway drawn from Andrei's proposed shift of business logic into prompts.
relation (empty) from_talk
source_node_id (empty) de651e1c-2986-4df9-8a29-07bb38026510
target_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
create Narrow Agent Responsibilities For Reliabilityfrom_talkBuilding LLM powered applications in Ruby
context (empty) Andrei's central argument about agent reliability.
relation (empty) from_talk
source_node_id (empty) 3b30703a-2e8e-47e2-8514-041193b47658
target_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
create Port Python Libraries With ChatGPTfrom_talkBuilding LLM powered applications in Ruby
context (empty) Andrei's practical recommendation to Ruby developers missing Python libraries.
relation (empty) from_talk
source_node_id (empty) fe89043e-6872-4cbc-bf65-b13491f8726d
target_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
create Open Source Maintainer Lessonsfrom_talkBuilding LLM powered applications in Ruby
context (empty) Lessons Andrei shared from running langchainrb as open source.
relation (empty) from_talk
source_node_id (empty) 935870a7-99b1-435c-9055-1b927fcb8502
target_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
create Prompts as Business Logicrelated_toRetrieval Augmented Generation
context (empty) Moving SOPs into prompts complements retrieving proprietary data into prompts.
relation (empty) related_to
source_node_id (empty) de651e1c-2986-4df9-8a29-07bb38026510
target_node_id (empty) 97c36266-f46d-4e90-a9b7-9cf02f52208a
create Narrow Agent Responsibilities For ReliabilityaboutAI Agent
context (empty) Takeaway is specifically about how to make AI agents reliable.
relation (empty) about
source_node_id (empty) 3b30703a-2e8e-47e2-8514-041193b47658
target_node_id (empty) 54eb5591-9778-4e71-b4d1-e195e22bd70f
create Port Python Libraries With ChatGPTaboutChatGPT
context (empty) Recommends using ChatGPT to translate Python libraries to Ruby.
relation (empty) about
source_node_id (empty) fe89043e-6872-4cbc-bf65-b13491f8726d
target_node_id (empty) ad4d9c22-458a-4d00-947c-e5fb3221ebbf
create Open Source Maintainer Lessonsaboutlangchainrb
context (empty) Lessons drawn from maintaining langchainrb.
relation (empty) about
source_node_id (empty) 935870a7-99b1-435c-9055-1b927fcb8502
target_node_id (empty) fbc9b011-f6f3-4a11-bdea-5b88258eb5c4
create Generate code once vs instruct LLM per requestasked_atBuilding LLM powered applications in Ruby
context (empty) Audience question during the Q&A.
relation (empty) asked_at
source_node_id (empty) 5159b2cd-a59e-460b-8ba7-20e48a90f4b2
target_node_id (empty) 73046548-5f00-4591-9316-4096e0501838
create Generate code once vs instruct LLM per requestaboutAI Agent
context (empty) Question concerns alternative architectures for agent-style LLM apps.
relation (empty) about
source_node_id (empty) 5159b2cd-a59e-460b-8ba7-20e48a90f4b2
target_node_id (empty) 54eb5591-9778-4e71-b4d1-e195e22bd70f

Read set

65 nodes

tool Ruby search_nodes talk Building LLM powered applications in Ruby search_nodes+get_node_edges talk Forms Are Dead: Building Agentic Workflows in Ruby search_nodes person Adam Okoń search_nodes tool interactor search_nodes takeaway Sign serverlessforruby.org petition search_nodes project Ruby Romania search_nodes talk Ruby Standard Library Hidden Gems Lightning Talk search_nodes tool ChatGPT search_nodes talk Build Your Own Internal CLI Tools Lightning Talk search_nodes person Andrei Bondarev search_nodes+get_node_edges takeaway Name Things To Find Their Properties search_nodes person Julik Tarkhanov search_nodes concept xkcd Dependency / Nebraska Problem search_nodes project Ruby News search_nodes tool RealtimeBoard search_nodes talk Events events events search_nodes concept Real-time Web Applications search_nodes talk FaaS for Ruby Lightning Talk search_nodes talk Scientific Ruby Lightning Talk search_nodes tool Midjourney search_nodes question Cross-region business reporting aggregation search_nodes tool Release Drafter search_nodes takeaway Time Travel Superpower search_nodes tool GraphQL search_nodes takeaway Act as a perfect tool on reviews search_nodes event wroclove.rb 2024 search_nodes event wroclove.rb 2022 search_nodes event wroclove.rb 2023 search_nodes event wroclove.rb 2025 search_nodes event wroclove.rb 2026 search_nodes event wroclove.rb 2019 search_nodes event wroclove.rb 2018 search_nodes talk Mutation testing workshop wroclove.rb 2019 search_nodes talk Webmock unmocked search_nodes project granite search_nodes talk Methods Gem for Ruby Method References search_nodes concept GitHub Self-Hosted Runner search_nodes company SpaceX search_nodes takeaway Buy Faster Hardware search_nodes resource Practical Object-Oriented Design in Ruby search_nodes talk Offline Sandwich Focus Workflow search_nodes tool left-pad search_nodes project Petri Nets Performance Prediction Gem search_nodes tool Sonic Pi search_nodes resource My Ruby Story search_nodes takeaway Be kind and build useful things search_nodes tool CockroachDB search_nodes tool MessageDB search_nodes tool SQLite search_nodes concept Database Indexes search_nodes tool Elasticsearch search_nodes tool PgHero search_nodes question NoSQL vs Postgres for an event store search_nodes tool ClickHouse search_nodes concept Function as a Service search_nodes talk Setup and operation of mutation testing in agentic world search_nodes tool Ruby Event Store search_nodes company Microsoft search_nodes tool GitHub Actions search_nodes tool CircleCI search_nodes company Auth0 search_nodes concept Tethered Cat Fallacy search_nodes concept Cynefin Framework search_nodes takeaway AI Will Not Replace Developer-Client Empathy search_nodes

2 edges