Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Vibe NLP for Applied NLP

Vibe NLP for Applied NLP

One of the hardest parts of applied NLP has always been breaking down complex business problems into machine learning components. It's so hard because it requires domain expertise and reasoning about the specific use case, and it's the one thing technology couldn't fix. But what if we could take some of the learnings from AI-powered coding assistants and apply them to solving real-world NLP problems? In this talk, I'll show how we've built powerful assistants and MCP servers to help developers solve NLP tasks using open-source software, and create practical and modular solutions that are small, fast and fully data-private.

At the core of it is an often overlooked idea: using LLMs to build systems instead of as systems. AI-powered coding assistants have transformed the way we build software – and they can be even more impactful for AI development itself and bridge the experience gap that's often holding teams back and causing projects to fail.

Avatar for Ines Montani

Ines Montani PRO

April 16, 2026

Resources

Ellf: Your Virtual NLP Engineer (beta)

https://beta.ellf.ai

Read about and join the waitlist for Ellf, our new platform and virtual assistant for applied NLP.

Building AI with AI

https://speakerdeck.com/inesmontani/building-ai-with-ai

In this talk, I'll show you why we should use LLMs to build systems instead of as systems, and why code and the open-source ecosystem is more important than ever, not less.

More Decks by Ines Montani

Other Decks in Programming

Transcript

  1. users companies fully scriptable in Python Alex Smith Developer Kim

    Miller Analyst GPT-5 API Modern scriptable annotation tool for machine learning developers prodigy.ai 12k+ 1000+
  2. help developer implement code for the given tools help developer

    pick the right tools and implement code of coding assistants
  3. help developer implement code for the given tools help developer

    pick the right tools and implement code of coding assistants solve a business problem
  4. help developer implement code for the given tools help developer

    pick the right tools and implement code of coding assistants solve a business problem “I need to analyze these company reports and create a table of the total spending on di ff erent types of IT services over time.” 2025.pdf 2024.pdf 2023.pdf
  5. list all company names in the text write a script

    to extract company names from text
  6. Why don’t we just build ? lots of steps operational

    complexity expertise coding agents are really good at software 1.0 Software 1.0
  7. Why don’t we just build ? lots of steps operational

    complexity expertise coding agents are really good at software 1.0 Software 1.0 kind of
  8. Why don’t we just build ? lots of steps operational

    complexity expertise coding agents are really good at software 1.0 Software 1.0 Software 2.0 code + data kind of
  9. Why don’t we just build ? lots of steps operational

    complexity expertise coding agents are really good at software 1.0 Software 1.0 Software 2.0 code + data agentic kind of
  10. ✳ Claude Code beta.ellf.ai ❯ We need to extract product

    mentions and pricing from company press releases. We started with an LLM inference API but it's too slow and expensive, plus we can't send confidential data to an external API. How can we train our own model?
  11. ✳ Claude Code beta.ellf.ai ❯ We need to extract product

    mentions and pricing from company press releases. We started with an LLM inference API but it's too slow and expensive, plus we can't send confidential data to an external API. How can we train our own model? ⏺ Yes, and this is exactly the right call. What you're describing — structured extraction from a known document type — is precisely where a supervised model beats an LLM on every dimension: speed, cost, privacy, and accuracy once you have enough examples. The LLM you've been using is essentially doing a job that a small NER model will do 10–100× faster, for low marginal cost, entirely on-premise. My rough pipeline sketch for your case:
  12. ✳ Claude Code beta.ellf.ai distilled expertise from 10+ years of

    solving NLP problems ❯ We need to extract product mentions and pricing from company press releases. We started with an LLM inference API but it's too slow and expensive, plus we can't send confidential data to an external API. How can we train our own model? ⏺ Yes, and this is exactly the right call. What you're describing — structured extraction from a known document type — is precisely where a supervised model beats an LLM on every dimension: speed, cost, privacy, and accuracy once you have enough examples. The LLM you've been using is essentially doing a job that a small NER model will do 10–100× faster, for low marginal cost, entirely on-premise. My rough pipeline sketch for your case:
  13. ✳ Claude Code beta.ellf.ai distilled expertise from 10+ years of

    solving NLP problems PROJECT_PLAN.md ❯ We need to extract product mentions and pricing from company press releases. We started with an LLM inference API but it's too slow and expensive, plus we can't send confidential data to an external API. How can we train our own model? ⏺ Yes, and this is exactly the right call. What you're describing — structured extraction from a known document type — is precisely where a supervised model beats an LLM on every dimension: speed, cost, privacy, and accuracy once you have enough examples. The LLM you've been using is essentially doing a job that a small NER model will do 10–100× faster, for low marginal cost, entirely on-premise. My rough pipeline sketch for your case:
  14. ✳ Claude Code ❯ / /ellf-project Plan the project and

    break down business problem beta.ellf.ai/docs/modules
  15. ✳ Claude Code ❯ / /ellf-project Plan the project and

    break down business problem /ellf-annotate Define labels, components and annotate data beta.ellf.ai/docs/modules
  16. ✳ Claude Code ❯ / /ellf-project Plan the project and

    break down business problem /ellf-annotate Define labels, components and annotate data /ellf-prodigy Implement workflows for the Prodigy annotation tool beta.ellf.ai/docs/modules
  17. ✳ Claude Code ❯ / /ellf-project Plan the project and

    break down business problem /ellf-annotate Define labels, components and annotate data /ellf-prodigy Implement workflows for the Prodigy annotation tool /ellf-patterns Interactively develop patterns and rule-based logic beta.ellf.ai/docs/modules
  18. ✳ Claude Code ❯ / /ellf-project Plan the project and

    break down business problem /ellf-annotate Define labels, components and annotate data /ellf-prodigy Implement workflows for the Prodigy annotation tool /ellf-patterns Interactively develop patterns and rule-based logic /ellf-train Train and export custom models and components beta.ellf.ai/docs/modules
  19. ✳ Claude Code ❯ / /ellf-project Plan the project and

    break down business problem /ellf-annotate Define labels, components and annotate data /ellf-prodigy Implement workflows for the Prodigy annotation tool /ellf-patterns Interactively develop patterns and rule-based logic /ellf-train Train and export custom models and components /ellf-ask Ask specific questions and query the knowledge base beta.ellf.ai/docs/modules
  20. ✳ Claude Code ❯ / /ellf-project Plan the project and

    break down business problem /ellf-annotate Define labels, components and annotate data /ellf-prodigy Implement workflows for the Prodigy annotation tool /ellf-patterns Interactively develop patterns and rule-based logic /ellf-train Train and export custom models and components /ellf-ask Ask specific questions and query the knowledge base beta.ellf.ai/docs/modules will be open- sourced soon! skills
  21. training data transformation evaluation We need to run lots of

    stu ff ! analysis testing optimization annotation tasks auto-annotation agents
  22. training data transformation evaluation various scripts We need to run

    lots of stu ff ! analysis testing optimization annotation tasks auto-annotation agents
  23. training data transformation evaluation various scripts We need to run

    lots of stu ff ! … analysis testing optimization annotation tasks auto-annotation agents
  24. training data transformation evaluation various scripts We need to run

    lots of stu ff ! … analysis testing optimization annotation tasks auto-annotation agents
  25. training data transformation evaluation various scripts We need to run

    lots of stu ff ! … analysis testing GPU optimization annotation tasks auto-annotation agents
  26. training data transformation evaluation various scripts We need to run

    lots of stu ff ! … analysis testing often sensitive data GPU optimization annotation tasks auto-annotation agents
  27. training data transformation evaluation various scripts We need to run

    lots of stu ff ! … analysis testing often sensitive data GPU fully custom optimization annotation tasks auto-annotation agents
  28. Human + coding agent collaboration @task_recipe( title="My Recipe", field_props={ "input":

    TextProps(title="Input data"), "labels": ListProps(title="Labels"), "dataset": props.dataset_choice, } ) def my_recipe(input: Input, labels: List[str], dataset: Dataset): ... Recipe beta.ellf.ai
  29. Human + coding agent collaboration @task_recipe( title="My Recipe", field_props={ "input":

    TextProps(title="Input data"), "labels": ListProps(title="Labels"), "dataset": props.dataset_choice, } ) def my_recipe(input: Input, labels: List[str], dataset: Dataset): ... Recipe $ ellf tasks create my_recipe -- input "Corpus" - - labels PRODUCT,ORG - - dataset products CLI beta.ellf.ai
  30. Human + coding agent collaboration @task_recipe( title="My Recipe", field_props={ "input":

    TextProps(title="Input data"), "labels": ListProps(title="Labels"), "dataset": props.dataset_choice, } ) def my_recipe(input: Input, labels: List[str], dataset: Dataset): ... Recipe $ ellf tasks create my_recipe -- input "Corpus" - - labels PRODUCT,ORG - - dataset products CLI Input data input Corpus Labels labels PRODUCT ORG Dataset dataset products UI Start task beta.ellf.ai
  31. Human + coding agent collaboration @task_recipe( title="My Recipe", field_props={ "input":

    TextProps(title="Input data"), "labels": ListProps(title="Labels"), "dataset": props.dataset_choice, } ) def my_recipe(input: Input, labels: List[str], dataset: Dataset): ... Recipe $ ellf tasks create my_recipe -- input "Corpus" - - labels PRODUCT,ORG - - dataset products CLI scripting the SaaS application! Input data input Corpus Labels labels PRODUCT ORG Dataset dataset products UI Start task beta.ellf.ai
  32. Chat with Ellf beta.ellf.ai App and developer API need to

    speak the same language! machine human
  33. Chat with Ellf ✳ Claude Code ❯ /ellf-todo ⏺ Context

    summary: Phase 1 of an e-commerce aspect extraction project. The task is to write loader.py for the internal data warehouse API that segments sentences and yields {id, text, date} dictionaries. ✔ Successfully updated coding request 523060d8-b2db-4fd5-b541-5ee119007501 beta.ellf.ai App and developer API need to speak the same language! machine human
  34. Use LLMs to build the system, not as the system.

    Apps, developer APIs and agents need to speak the same language.
  35. Use LLMs to build the system, not as the system.

    Apps, developer APIs and agents need to speak the same language. Software 2.0 is a good idea and we can finally make it easy!