Natural Language Processing

36 posts

netflix4 min readCurated summary

GenRec: Towards LLM-Native Recommendation at Netflix

GenRec is Netflix’s LLM-backed recommendation ranker, designed to reduce dependence on thousands of hand-engineered features. It verbalizes user history, item metadata, and context, then post-trains a Netflix-adapted foundation model for catalog-aware ranking and long-term member value. In large-scale A/B testing, it reportedly improved both short- and long-term metrics while using far fewer labeled examples and input signals than an established production ranker. ## Motivation for an LLM-Native Recommender - Netflix’s existing recommendation stack supports many content types and product surfaces but is costly to extend. - New use cases can require substantial feature engineering, architectural changes, infrastructure work, and experimentation. - LLMs offer: - Shared semantic representations for users, items, and interactions - Natural-language steering through prompts - Rich understanding of content and user histories - General-purpose LLMs are not production-ready on their own because they may: - Over-recommend globally popular titles - Hallucinate items outside the catalog - Ignore business constraints - Provide limited personalization ## Ranking Problem and Long-Term Utility - GenRec ranks the full Netflix catalog, or a provided candidate set. - It uses the user, interaction history, current context, and time to produce a personalized ranking. - The optimization target is expected long-term member utility—a proxy for satisfaction and retention—rather than only immediate clicks or plays. ## Two-Phase Training ### Netflix-Adapted Foundation Model - Netflix first adapts an open-source LLM using proprietary Netflix data. - The model learns: - Netflix content and metadata - Member behavior and preference patterns - General language understanding and generation - This relatively stable foundation can support multiple Netflix applications. ### GenRec Post-Training - A second training phase specializes the foundation model for recommendation. - It focuses on ranking quality, steering, reward alignment, and serving-cost constraints. - This phase is refreshed more frequently to reflect new content and changing member preferences. ## Interaction Data as Conversations - Hundreds of billions of events—including views, play duration, feedback, add-to-list actions, and abandons—are converted into single- or multi-turn recommender conversations. - Each user message includes verbalized: - Context and profile - Interaction history - Item metadata - The recommendation task - Assistant messages represent actual member behavior, such as titles played, viewing duration, or feedback. - During inference, GenRec uses the verbalized request and a catalog-aware scoring head; it does not generate conversational responses. - The conversational format mainly supports language-model training and comprehension of rich textual inputs. ## Context Engineering Instead of Feature Engineering - GenRec represents histories and context as natural language rather than relying primarily on dense, manually designed features. - The token budget becomes the new feature budget, so histories are selectively compressed: - Retain detailed, high-signal events such as long plays and thumbs-up - Remove low-signal events such as brief plays and hovers - Summarize repetitive behavior such as binge-watching - Add detail for important or cold-start items, including new releases - Recent and high-value interactions receive priority, while older information is compressed or dropped. - Prompt structure is also optimized for shared prefixes and prefix caching, reducing serving costs. ## Ranking, Language, and Reward Objectives - GenRec combines several training objectives: - **Catalog-aware ranking:** Uses high-value engagements as positive labels, applies denoising and thresholds, and trains the model with cross-entropy over the catalog or candidate set. - **Language modeling:** Preserves understanding of natural-language histories and metadata and supports potential future features such as recommendation explanations. - **Reward-weighted alignment:** Incorporates business requirements and longer-term satisfaction into training. - Reward signals can help balance content categories such as movies, series, games, live content, and podcasts instead of optimizing only immediate engagement. ## Serving and Results - GenRec runs in prefill-only mode on Netflix’s LLM serving infrastructure, avoiding the cost of decoding generated text. - A catalog-aware scoring head converts the model’s representations into item rankings. - Compared with a mature production ranker, GenRec achieved statistically significant improvements in short- and long-term online metrics. - It did so with a small fraction of the labeled data and input signals used by the existing system. GenRec suggests that recommendation systems can shift from extensive manual feature construction toward careful context engineering, LLM post-training, and reward alignment. The approach is most promising when paired with catalog constraints, efficient serving, and objectives that reflect long-term member value rather than raw engagement alone.

Read original(opens in new tab)
toss3 min readCurated summary

How AI Has Changed the Product Design Process

Toss redesigned its customer-service chatbot after finding that 60% of users abandoned the existing menu-based experience. Instead of forcing customers to identify the correct category, the team used AI to interpret natural-language requests and connect users directly to solutions. The project’s key insight was to prototype and validate experiences early, then improve the system through reusable rules rather than endlessly editing individual scenarios. ## Replacing Menu Navigation with Natural Language - The customer center serves roughly 600,000 visitors monthly, including about 170,000 chat users. - Users often know their problem—such as a failed payment or mistaken transfer—but not how Toss categorizes it. - The team therefore aimed to build a chatbot that understood intent and guided users directly to the appropriate resolution. ## Generating Scenario Drafts from Real 상담 Data - AI created initial scenarios for the 20 most common customer-service issues. - Personal information was removed and data was anonymized or pseudonymized before use. - Instead of relying primarily on policy documents, the team trained the AI on real consultation data. - This revealed: - The language customers actually use - The questions agents ask to narrow down causes - The order in which problems are diagnosed and resolved - Ways to explain complex policies in understandable language - As a result, the chatbot behaved more like a human 상담사 than a system that simply listed policies. ## Validating Many Situations with a Scenario Hub - A single request can hide dozens of possible conditions. For example, membership cancellation may depend on whether: - The monthly fee was already paid - Benefits were used - Cancellation was already scheduled - The team built a scenario hub where these conditions could be saved and selected. - Each selection immediately opened a prototype conversation with the chosen conditions applied. - This enabled rapid testing after scenario changes, new branches, or rule updates. - The prototype became an experimentation environment rather than a static mockup, allowing the team to judge realistic conversations instead of relying on assumptions. ## Replacing Individual Fixes with General Rules - Testing revealed recurring problems, including: - Asking for information the chatbot already knew - Repeating the same explanation - Guessing when it lacked reliable information - Rather than fixing each scenario separately, the team created general rules such as: - Resolve the customer’s problem before giving explanations - Admit uncertainty instead of guessing - Escalate to a human agent only under defined conditions - Clearly limit the AI’s authority - Improving one scenario helped only that scenario, while improving a rule improved many scenarios at once. ## Designing the Experience Before the System - The team first envisioned the desired customer experience, then worked backward to determine the required: - Data structures - APIs - Operational tools - System architecture - This reversed the conventional process of designing infrastructure first and fitting the user experience onto it. - Within approximately three weeks, the team completed analysis, experience design, scenario generation, prototyping, testing, and refinement. - AI changed not only productivity but also the order of product design: designers could validate more possibilities before committing to implementation. ## Practical Lessons - Build an imperfect prototype early instead of waiting for a complete design. - Study real user data before relying solely on guides or documentation. - When similar problems recur, identify a shared rule instead of repeatedly patching individual cases. The broader recommendation is to use AI as a fast experimentation tool. Its greatest value is not simply producing artifacts, but making it cheaper and faster to test which experiences and design principles actually work.

Read original(opens in new tab)
github3 min readCurated summary

Accelerating researchers and developers building multilingual AI with a new open dataset

GitHub has released the GitHub Multilingual Repositories Dataset, an open metadata resource for finding public repositories containing non-English developer content. Covering more than 40 million repositories, it classifies language use in READMEs, issues, and pull requests, helping researchers build multilingual AI tools and study representation in open source. GitHub emphasizes that the dataset is a discovery tool—not definitive language ground truth—and releases it under CC0-1.0. ## Dataset Scope and Contents - Contains over 80 million classification rows across more than 40 million public repositories. - Classifies: - READMEs - The most-commented issue - The most-commented pull request - Uses the first 150 characters of each text source, excluding samples shorter than 20 characters. - Includes classifications and confidence scores from: - fastText - Google’s CLD3 - lingua-py - Only classifications with confidence above 0.5 are included. - Repository metadata includes creation date, disk usage, stars, forks, primary language, SPDX license, issue and pull request counts, and snapshot date. ## Why Multiple Classifiers Are Exposed - GitHub does not combine the three classifiers into one definitive language label. - Classifiers differ in language coverage and confidence calibration, particularly for lower-resource languages. - Users can choose their own precision and recall strategy: - Require agreement among all classifiers for high-precision research. - Use a single classifier for broader exploratory studies. ## Language Patterns in Developer Content - Language distribution varies by repository content type. - Korean is the most common non-English language in issue text but ranks only fifth in README classifications. - Portuguese is the leading non-English README language, appearing in more than 3 million repositories. - These differences show that developer communities may use different languages for documentation, issue discussions, and code collaboration. ## Potential Applications - Find repositories with documentation or collaboration in particular languages. - Study how multilingual communities use READMEs, issues, and pull requests. - Create evaluation datasets for coding assistants, documentation generators, and code review tools. - Measure representation of European and other underrepresented languages in open source. - Provide evidence for expanding language support in developer tools and AI systems. ## Limitations and Responsible Use - Repository text is often short and may contain badges, commands, code, usernames, templates, or multiple languages. - A 150-character sample may not represent the language of an entire repository. - Classifier performance varies, especially for lower-resource languages. - The dataset should not be treated as a ground-truth language-identification benchmark. - It provides repository-level signals and should not be used to infer sensitive characteristics of repository owners, contributors, or communities. ## Importance for Multilingual AI - Many European languages are underrepresented in the data used to train and evaluate AI systems. - Developer content provides domain-specific examples of software collaboration, including installation guidance, bug reports, feature requests, and code reviews. - The dataset can help identify language gaps, improve evaluation, and support more inclusive AI tools for developers worldwide. GitHub recommends using the CC0-licensed dataset to conduct research, build evaluation sets, develop tools, and improve its classifications. Its transparency and multiple confidence signals allow users to tailor the data to their own research needs while accounting for its limitations.

Read original(opens in new tab)
spotify3 min readCurated summary

Building a Natural Language Interface to the Spotify Ads API with Claude Code Plugins | Spotify Engineering

The post describes an open-source Claude Code plugin that lets users manage Spotify advertising campaigns through natural-language requests. It translates high-level intent into validated, multi-step Spotify Ads API calls, handling targeting lookups, budget conversions, entity dependencies, and missing information. The authors favor a Markdown- and CLI-based design over MCP because it keeps the system transparent, lightweight, customizable, and grounded in Spotify’s OpenAPI specification. ## Natural-Language Campaign Creation - Users can request campaigns conversationally, such as creating an audio campaign targeting a specific age range and location with a daily budget. - The agent orchestrates the campaign lifecycle: - Creates the campaign. - Creates an ad set with targeting and budget. - Creates the ad and attaches creative assets. - It handles implementation details automatically: - Looks up geographic targeting IDs. - Converts dollar amounts into API micro-units. - Validates audience size. - Passes entity IDs between dependent API calls. - Prompts for missing required information. ## Claude Code Plugin Architecture - **Skills** provide slash commands, with each command defined in Markdown alongside its endpoints, request formats, and output behavior. - **Agents** interpret freeform requests and decompose them into the necessary API operations. - **Hooks** intercept tool calls to refresh OAuth tokens and inject HTTP headers. - **Settings** store local user configuration, including credentials, ad accounts, and environment preferences. - Because all components are human-readable Markdown, the plugin has no compilation, bundling, or package-management step. - API behavior can often be corrected by updating documentation or instructions rather than changing compiled code. ## CLI and OpenAPI Instead of MCP - The authors avoided MCP because the Spotify Ads API has more than 30 resource types and complex nested schemas. - Defining every endpoint as an MCP tool would create a large static registry and consume context even when most tools were irrelevant. - The plugin loads only the API documentation needed for a particular task. - API calls are issued as visible `curl` commands, allowing users to inspect, copy, modify, and reproduce them. - Spotify’s roughly 8,600-line OpenAPI v3 specification serves as the single source of truth. - Updating one bundled specification file is simpler than maintaining a separate translation into MCP schemas. ## Domain-Specific Agent Behavior - The request-builder agent is defined in `agents/spotify-ads-request-builder.md`. - It teaches the model Spotify-specific conversions, including: - Dollar values to micro-amounts. - Natural-language dates to ISO 8601. - Platform names to API enum values. - It performs multi-step orchestration for campaign, ad set, and ad creation. - It resolves locations such as “Connecticut” through geo-targeting search endpoints and builds the required `geo_targets` structure. - It performs pre-flight audience estimates to ensure targeting meets minimum size requirements. - It is designed to control execution carefully and validate requests before making changes that could affect advertising budgets. ## Practical Implication The plugin demonstrates that a large advertising API can be made approachable without hiding its mechanics. A Markdown-based Claude Code integration, backed by the official OpenAPI specification and transparent CLI requests, offers a practical balance between natural-language convenience, developer control, auditability, and maintainability.

Read original(opens in new tab)
meta2 min readCurated summary

Modernizing the Facebook Groups Search to Unlock the Power of Community Knowledge

Facebook has re-architected Groups Search to make community knowledge easier to discover, understand, and validate. Its new hybrid retrieval system combines keyword matching with semantic search, while automated model-based evaluation measures relevance at scale. The result is improved search engagement and relevance without increasing error rates. ## Friction in Community Search - **Discovery:** Traditional lexical search depends on exact words, so a query for “small individual cakes with frosting” might miss posts discussing “cupcakes.” Semantic matching helps connect different phrasing with the same intent. - **Consumption:** Users often must read dozens of comments to identify consensus or useful advice, creating an “effort tax.” - **Validation:** Relevant expertise is frequently scattered across group discussions, making it difficult to evaluate purchases or decisions using community knowledge. ## Hybrid Retrieval Architecture - Queries are tokenized, normalized, and rewritten before retrieval. - The **lexical path**, powered by Facebook’s Unicorn inverted index, retrieves exact or closely matching terms and preserves precision for proper nouns and quotations. - In parallel, the **semantic path** uses a 12-layer, 200-million-parameter Search Semantic Retriever to encode queries into dense vectors. - Approximate nearest-neighbor search over a Faiss index retrieves conceptually similar posts, even when they use different words. ## Multi-Task Ranking - Results from lexical and semantic retrieval are merged for ranking. - The ranking model combines traditional signals such as TF-IDF and BM25 with semantic cosine-similarity scores. - A multi-task, multi-label model jointly optimizes for clicks, shares, and comments. - This approach balances theoretical relevance with the likelihood of meaningful community engagement. ## Automated Relevance Evaluation - Semantic similarity scores can be difficult to interpret, so evaluation was integrated into build verification testing. - Llama 3 with multimodal capabilities acts as an automated judge of search results. - Evaluation recognizes nuanced outcomes, including “somewhat relevant” results that share a broader domain or theme. - This enables scalable measurement of conceptual matching and result diversity without relying entirely on human labeling. ## Results and Future Work - The hybrid system outperformed the keyword-only baseline in offline quality and search-engagement metrics. - Facebook reports improved relevance without higher error rates. - Future plans include using LLMs directly during ranking and dynamically adapting retrieval parameters to query complexity. The approach demonstrates that combining lexical precision with neural semantic understanding can make community search more effective. Further LLM integration may help the system interpret post content and tailor retrieval more intelligently.

Read original(opens in new tab)
cloudflare3 min readCurated summary

Introducing Agent Lee - a new interface to the Cloudflare stack

Agent Lee is Cloudflare’s new in-dashboard AI assistant, designed to replace complex navigation with natural-language interaction across the Cloudflare platform. It can inspect account data, troubleshoot issues, and—when explicitly approved—make changes or deploy resources. Built on Cloudflare’s own infrastructure, it combines sandboxed code execution, permission controls, and generative UI to provide an interactive way to manage real accounts. ## A Natural-Language Interface to Cloudflare - Agent Lee understands account resources such as Workers, zones, DNS settings, and error rates. - Users can ask it to: - Identify the top error messages for a Worker. - Diagnose access problems involving a `www` prefix. - Enable Cloudflare Access for a domain. - Create an R2 bucket and connect it to a Worker. - It can retrieve account-specific context, use the appropriate tools, and present results through charts and other visualizations. - The beta reportedly serves about 18,000 daily users and performs nearly 250,000 tool calls per day across services including DNS, Workers, SSL/TLS, R2, Registrar, Cache, Cloudflare Tunnel, and API Shield. ## Codemode and Sandboxed Execution - Instead of exposing raw MCP tool definitions to the model, Agent Lee uses Codemode. - The model writes TypeScript that calls a generated API, which is intended to improve accuracy and support multi-step operations in a single script. - Generated code runs through a Cloudflare MCP server and a Durable Object acting as a credentialed proxy. - The Durable Object: - Classifies operations as reads or writes by inspecting the method and request body. - Proxies read operations directly. - Blocks write operations until the user explicitly approves them. - Keeps API keys out of generated code and injects credentials server-side. ## MCP Permissions and User Approval - Agent Lee connects to Cloudflare’s MCP server through: - A search tool for querying API endpoints. - An execute tool for running code that performs API requests. - Any operation that changes the account must pass through an elicitation step. - Approval is an enforced permission boundary rather than merely a confirmation-oriented interface feature. - Agent Lee cannot bypass the approval gate before executing writes. ## Built on Cloudflare’s Public Stack - Agent Lee uses the same building blocks available to Cloudflare customers: - Agents SDK - Workers AI - Durable Objects - Cloudflare’s MCP infrastructure - Cloudflare developed and tested the system in production against real accounts. - The company positions this approach as a way to identify platform limitations and validate patterns that other developers can reuse. ## Generative UI - Agent Lee supplements text responses with dynamically generated interface components. - Questions about traffic can produce interactive line charts rather than plain numerical summaries. - An adaptive grid lets users reserve space for new UI blocks by dragging across the interface and describing what they want. - Supported components include: - Tables - Interactive charts - Architecture maps - Other dynamic visual blocks - The result is intended to turn conversation history into an evolving operational dashboard. ## Quality and Safety - Elicitations are used whenever Agent Lee needs to perform a non-read action, requiring explicit approval in the interface. - Cloudflare also evaluates the system’s: - Conversation success rate - Information accuracy - Because the product remains in beta, users may encounter limitations or edge cases as its reliability and performance continue to improve. Agent Lee’s central promise is to make Cloudflare operations conversational without removing control. Its most important design choice is the combination of broad account awareness with a structural approval gate for changes, while its generative UI makes the resulting information and workflows more actionable.

Read original(opens in new tab)
grammarly3 min readCurated summary

What Is AI Chat? Definition, How It Works, and Key Benefits

AI chat enables open-ended, context-aware conversations with systems that generate responses dynamically rather than following fixed scripts. Powered by large language models (LLMs), it supports tasks such as writing, brainstorming, learning, summarizing, planning, and coding. Its flexibility comes with limitations: responses reflect learned patterns rather than true understanding, so users should provide clear context and verify results. ## What AI Chat Is - AI chat allows users to ask questions naturally and refine requests through follow-up messages. - It can answer questions, explain complex subjects, draft and revise text, summarize documents, generate code, and provide feedback. - Unlike fixed chatbot flows, it handles unstructured requests and evolving conversations without requiring users to restart. ## How AI Chat Works - **LLM training:** Models learn language patterns from massive text datasets rather than memorizing a fixed set of answers. - **Natural language processing:** The system analyzes prompts to infer meaning, intent, tone, and context beyond exact keyword matches. - **Response generation:** The model predicts and selects text one word at a time based on the prompt and patterns learned during training. - **Conversation context:** Recent messages help the system interpret follow-up requests, such as understanding that “make it shorter” refers to a previously generated summary. - **Ongoing refinement:** Fine-tuning and human feedback improve safety, accuracy, and alignment. Models generally do not learn from individual conversations in real time. ## AI Chat Compared with Traditional Chatbots - Traditional chatbots commonly use rules, decision trees, and scripted responses. - They work well for narrow, repeatable tasks such as FAQs, appointment booking, and order tracking. - AI chat is better suited to open-ended activities including brainstorming, drafting, explanations, and problem-solving. - “Conversational AI chatbot” usually describes a chatbot interface powered by generative AI, making it more flexible than a fully rules-based system. ## Common Uses - **Writing and editing:** Draft emails, rewrite passages, adjust tone, improve clarity, and revise reports or presentations. - **Brainstorming:** Generate ideas, outlines, alternatives, and new perspectives through iterative discussion. - **Learning and planning:** Explore unfamiliar topics, simplify complex information, and develop plans. - **Coding support:** Generate code, explain technical concepts, and help troubleshoot problems. ## Effective Use - Write clear prompts and provide relevant context. - State the goal, desired format, audience, and preferences. - Use follow-up questions to refine the response. - Review outputs for factual errors, bias, and inappropriate assumptions. AI chat is most useful as a flexible assistant rather than an unquestionable authority. Use it for exploration and productivity, but verify important information and apply human judgment before relying on its output.

Read original(opens in new tab)
grammarly3 min readCurated summary

How to Create a Chatbot Step by Step: A Beginner’s Guide

Chatbot development begins with a focused purpose, not technology. By choosing the right interaction method, chatbot type, and platform, organizations can automate routine tasks and improve user experiences without necessarily needing developers. Successful chatbots also require deliberate conversation design, testing, monitoring, and continuous improvement. ## What Chatbots Can Do - Simulate conversations through text or voice. - Answer frequently asked questions and provide information. - Handle structured tasks such as: - Checking order status - Booking appointments - Explaining policies - Guiding users through onboarding - AI-powered and hybrid chatbots can manage follow-up questions and more complex, multistep interactions. - They can reduce repetitive work, improve response consistency, and help users reach solutions faster. ## Define the Chatbot’s Goal - Identify two or three specific tasks the chatbot should handle. - Define the target audience, such as customers, employees, or students. - Establish success metrics, including: - Fewer support tickets - Faster response times - Higher task-completion rates - A narrow, well-defined purpose makes the chatbot easier to design, test, and refine. ## Choose the Interaction Method - Decide whether the chatbot will be text-based or voice-based. - Text is generally simpler to build. - Voice requires additional technical setup. - Choose where it will operate, such as: - A website - Mobile application - Messaging platform - Internal company tool - Determine how conversations begin, whether through typed messages, preset options, or proactive prompts. - The access point and interaction style directly affect development and maintenance requirements. ## Select the Chatbot Type - **Rule-based chatbots** use predefined flows, menus, and decision trees for predictable requests. - **Keyword-based chatbots** respond to specific words or short phrases, such as “pricing” or “hours.” - **AI chatbots** use artificial intelligence and natural language processing to handle varied questions and contextual follow-ups, but require more testing and oversight. - **Hybrid chatbots** combine structured rules for common tasks with AI for open-ended questions. - The choice determines the chatbot’s flexibility, behavior, complexity, and ongoing management effort. ## Choose a Building Platform - **No-code platforms** such as Chatling, Voiceflow, Zapier, and Landbot use visual interfaces and are suitable for beginners and simple chatbot tasks. - **Low-code or full-code approaches** using technologies such as Python, Node.js, or AI frameworks provide greater customization and integration capabilities. - Platform selection should account for: - Cost - Integrations - Analytics - Scalability - Data protection - Required technical expertise ## Design the Conversation Flow - Map typical conversations before implementing the chatbot. - Planning helps identify missing responses, avoid dead ends, and create a smoother user experience. - Traditional chatbots generally use structured decision paths, while AI chatbots support more flexible conversations. - The flow should reflect the chatbot’s purpose and provide a clear route for completing tasks or escalating complex issues. ## Ongoing Improvement - Building and launching the chatbot is only the beginning. - Chatbots should be tested before release and monitored afterward. - Regular refinement, accurate training data, configuration updates, and performance reviews help maintain quality over time. A practical approach is to start with a narrow use case and a simple platform, then expand as user needs and performance data become clearer. Choose AI or custom development only when the chatbot requires more flexibility, deeper integrations, or complex conversational capabilities.

Read original(opens in new tab)
grammarly3 min readCurated summary

What Is a Chatbot? Definition, Types, and Examples

Chatbots are conversational interfaces that use text or voice to answer questions, provide information, and help users complete tasks. They range from predictable rule- and keyword-based systems to flexible AI-powered tools that generate responses dynamically. Their main advantages are speed, consistency, and scalability, but flexibility and accuracy depend on how they are designed. ## What Chatbots Are - Chatbots simulate human conversation through text or voice. - They let users ask questions or make requests without navigating menus or fixed workflows. - Common applications include websites, mobile apps, messaging platforms, customer support, and help centers. - A chatbot is the user-facing interface; conversational AI provides language-understanding capabilities; and virtual assistants are broader tools that use conversation to perform tasks. ## Main Types of Chatbots ### Rule-Based Chatbots - Follow predefined decision trees and fixed conversation paths. - Commonly use buttons or menus such as “Billing” and “Technical support.” - Provide consistent, predictable responses. - Struggle with unexpected questions or requests outside their programmed workflows. ### Keyword-Based Chatbots - Detect specific words or phrases and return associated responses. - For example, the word “refund” might trigger a returns-policy link. - Allow free-text input but do not truly understand intent. - Can fail when users phrase requests differently from expected keywords. ### AI Chatbots - Use machine learning, natural language processing, and large language models to interpret requests. - Generate responses dynamically rather than selecting only from predefined answers. - Can handle loosely phrased questions, follow-up messages, complex explanations, and tone adjustments. - Responses may vary and should be checked for accuracy and relevance. ### Hybrid Chatbots - Combine structured rules with AI-generated responses. - May use menus to route common requests and AI for more complex follow-up questions. - Balance predictable task handling with conversational flexibility. ## How Chatbots Work - **Receive input:** The system captures a typed message or spoken request. - **Interpret the request:** Rule-based systems follow pathways, keyword systems match terms, and AI systems analyze intent and context. - **Generate a response:** The chatbot provides information, a next step, a predefined reply, or an AI-generated answer. - The overall process is similar across chatbot types, but the method used to interpret messages and produce responses differs significantly. ## Benefits and Limitations - Chatbots can deliver fast responses, provide consistent information, scale across many users, and automate routine interactions. - They can guide users through tasks, answer common questions, and reduce reliance on human support. - Rule- and keyword-based systems are reliable within narrow, predefined scenarios but lack flexibility. - AI chatbots handle broader conversations more naturally but may produce inaccurate or inconsistent answers. - Choosing the right chatbot type depends on whether predictability, flexibility, task automation, or open-ended conversation is most important. A practical chatbot strategy matches the technology to the task: use structured systems for predictable workflows, AI for nuanced conversations, and hybrid designs when both reliability and flexibility are needed.

Read original(opens in new tab)
gitlab3 min readCurated summary

Extend GitLab Duo Agent Platform: Connect any tool with MCP

GitLab Duo Agent Platform can connect to Jira and other MCP-compatible tools, allowing developers to manage project data through natural-language requests inside their IDE. The post explains how to configure Atlassian OAuth, register Jira as an MCP server, and verify the connection in GitLab and VS Code. It concludes with practical workflows for backlog planning and creating or triaging issues directly from code context. ## MCP Architecture - GitLab Duo Agent Platform operates as the MCP client. - The Atlassian MCP server: - Authenticates users - Converts natural-language requests into Jira API calls - Returns structured results to GitLab Duo - Maintains security and audit controls - This integration reduces context switching between Jira, GitLab, and the IDE. ## Configure the Jira OAuth Application - Create an OAuth 2.0 integration in the Atlassian Developer Console. - Add Jira API permissions: - `read:jira-work` for issues, projects, and boards - `write:jira-work` for creating and updating issues - `read:jira-user` for user information - Configure the callback URL: - `https://gitlab.com/oauth/callback` - Copy the generated Client ID and Client Secret and store them securely. ## Configure GitLab Duo MCP - Create `.gitlab/duo/mcp.json` in the GitLab project. - Register the Atlassian MCP endpoint at: `https://mcp.atlassian.com/v1/mcp` - Configure OAuth authorization and token URLs: - `https://auth.atlassian.com/oauth/authorize` - `https://auth.atlassian.com/oauth/token` - Replace the placeholder credentials with the Jira OAuth values. - Enable **Allow external MCP tools** under **Group Settings → GitLab Duo → Configuration**. ## Verify the Connection - Ask GitLab Duo: - “What MCP tools do you have access to?” - “Test the MCP JIRA configuration in this project” - Approve access on the Atlassian MCP website and select the relevant Jira instance. - Use **GitLab: Show MCP Dashboard** from the VS Code or VSCodium Command Palette to inspect: - MCP server connection status - Available tools such as `jira_get_issue` and `jira_create_issue` - Real-time server logs and tool calls ## Planning and Backlog Prioritization - Query Jira from the GitLab Duo chat without leaving the IDE. - Find unassigned issues in a project. - Ask the assistant to: - Recommend the top issues to prioritize - Summarize their context - Assign selected issues to the current user - This supports sprint planning by combining Jira data with AI-generated prioritization. ## Issue Triage and Creation from Code - Developers can investigate bugs while reviewing code and interact with Jira conversationally. - Example workflows include: - Searching for an existing bug related to a code-level error - Creating a Jira issue if no matching ticket exists - Including relevant code context in the issue - Identifying possible blockers - Linking the issue to the current branch The integration is most useful when teams want Jira actions, planning, and issue management available directly within their development environment. Teams should configure OAuth scopes carefully, protect client credentials, and use the MCP Dashboard to monitor connections and tool activity.

Read original(opens in new tab)
cloudflare3 min readCurated summary

From reactive to proactive: closing the phishing gap with LLMs

Cloudflare argues that email security must move beyond reacting to user-reported phishing misses. LLMs can analyze millions of emails, reveal emerging threat patterns that traditional systems overlook, and guide specialized detection models before attacks become widespread. Its Sales Outreach phishing program reportedly reduced average daily reported misses by 20.4% from Q3 to Q4 2025, with a further two-thirds decline in Q1 2026. ## The Blind Spot in Reactive Defense - Traditional systems improve mainly after users report messages that were incorrectly classified as clean. - This feedback is valuable but inherently delayed: it reveals attacks that already succeeded. - The authors compare this problem to Abraham Wald’s World War II aircraft analysis: - Engineers studied bullet holes on returning planes. - Wald identified the missing data—the damage on planes that never returned. - Email security faces the same challenge because undetected threats are largely invisible. ## Mapping Threats with LLMs - LLMs can interpret context, intent, urgency, deception, and other nuanced characteristics in natural-language emails. - Cloudflare processes millions of unwanted messages daily, making manual classification and detailed threat mapping impractical. - LLM-generated categories expose emerging patterns and persistent trends, including: - `PrizeNotification` - `SalesOutreach` - These tags give analysts near-real-time, high-fidelity signals and reduce the need for manual investigation. - The resulting intelligence helps Cloudflare create or retrain targeted machine-learning models before threats become widely visible through customer reports. ## Detecting Sales Outreach Phishing - Sales Outreach phishing imitates legitimate B2B communication, using offers, special deals, or transactional requests to encourage malicious clicks or credential disclosure. - After identifying it as a major threat category, Cloudflare used LLM tags to build a continuously growing corpus of relevant messages. - Training data was grouped by linguistic and structural traits such as: - Persuasive framing - Manufactured urgency - Transactional language - Subtle social proof - Feature extraction focused on sentiment and intent rather than static indicators. - A specialized sentiment-analysis model was trained for Sales Outreach behavior instead of overloading a general phishing classifier. ## From Classification to Enforcement - The specialized model produces a risk score based on how closely an email matches known Sales Outreach patterns. - That score is combined with other signals, including: - Sender reputation - Link behavior - Historical context - Messages can then be allowed, quarantined, or blocked. - LLMs serve as the discovery layer, identifying new language variants, while the specialized model provides fast, scalable enforcement. - Newly detected examples continuously feed back into the pipeline as attackers change their tactics. ## Reported Results - Cloudflare says the proactive approach reduced customer-reported Sales Outreach misses. - Average daily submissions fell from 965 in Q3 2025 to 769 in Q4 2025. - This represented a 20.4% quarterly reduction. - The company reports that average daily submissions decreased by another two-thirds in Q1 2026. - Fewer misses mean less analyst work, fewer interruptions for users, and fewer opportunities for phishing messages to reach inboxes. Cloudflare’s approach recommends combining broad LLM-based threat discovery with narrowly focused detection models. This creates a proactive feedback loop that can identify and address emerging phishing techniques before relying on large volumes of user-reported failures.

Read original(opens in new tab)
airbnb4 min readCurated summary

Academic Publications & Airbnb Tech: 2025 Year in Review

Airbnb’s 2025 research program expanded across major academic venues, with a focus on applying AI, machine learning, and data science to search, ranking, personalization, and marketplace optimization. The company strengthened its presence at KDD and CIKM while broadening into NLP, optimization, and measurement science. Its research emphasized practical systems that improve experimentation, retrieval, recommendations, ranking quality, and booking conversion. ## Research Expansion in 2025 - Airbnb presented research at established conferences including KDD and CIKM, while expanding into venues such as COLING, LION, and VLDB. - Researchers used these conferences to: - Share production-scale findings with academic and industry peers. - Develop new collaborations. - Learn about emerging methods. - Mentor early-career researchers. - The work was organized around themes including applied machine learning for search and personalization, and NLP and LLM systems in production. ## Search Ranking and Marketplace Retrieval at KDD KDD is a leading conference for data mining, knowledge discovery, and large-scale analytics. Airbnb has presented there since 2018, and its 2025 contributions focused on improving search experimentation and location retrieval. - **Interleaving and counterfactual evaluation** - Airbnb introduced techniques for evaluating search-ranking ideas before launching full A/B tests. - These methods help teams identify promising experiments more quickly. - They are especially useful for accommodation booking, where long conversion cycles can make statistical significance slow to achieve. - The goal is to accelerate experimentation without compromising evaluation accuracy. - **Extreme classification for audience expansion** - Airbnb presented a high-precision approach to retrieving relevant geographic areas in its two-sided marketplace. - The system uses categorical location cells to identify areas containing listings a guest might realistically book. - This helps balance Airbnb’s diverse global inventory with users’ preferences for location, amenities, style, and price. - Airbnb also presented work on **TSMO**, or Two-sided Marketplace Optimization, and indicated that some technologies might eventually be open-sourced. ## Search and Recommendation Advances at CIKM At CIKM 2025, Airbnb’s Relevance and Personalization team had five peer-reviewed papers accepted. The work addressed search, recommendations, ranking metrics, multimodal representations, and user comparison behavior. - **Recommendations for overly narrow searches** - Airbnb developed a system that suggests alternatives when a guest’s search returns too few accommodations. - Suggestions may include different dates, broader amenity requirements, or adjusted price ranges. - The system aims to reduce search frustration and increase booking rates. - **Map-specific ranking optimization** - Maps account for approximately 80% of Airbnb search interactions. - Traditional feed-ranking assumptions do not accurately represent how users view and interact with map results. - Airbnb introduced a map-specific version of NDCG, a ranking-quality metric. - Experiments showed that optimizing for this metric improved bookings. - **BiListing multimodal embeddings** - BiListing combines listing text and photos into unified embedding representations. - It uses large language models and pretrained language-image models as ranking signals. - The approach produced a reported 0.425% improvement in normalized discounted booking gain and generated tens of millions of dollars in incremental revenue. - **Beyond pairwise learning-to-rank** - Airbnb proposed a learning-to-rank method that models interactions between items during pairwise comparisons. - This provides a more realistic view of what users prefer when evaluating search results. - The paper also describes efficient implementation techniques and online and offline evaluation results. - **Learning to Comparison-Shop** - The LTCS system models how users compare multiple listings rather than evaluating each listing independently. - It produced statistically significant improvements of 1.7% in NDCG and 0.6% in booking conversion rate. - The work reflects Airbnb’s broader effort to make ranking models sensitive to the context of an entire results page. ## NLP and Production LLM Systems - Airbnb also highlighted NLP and production LLM research, including participation in EMNLP. - Relevant application areas include: - Customer support. - Search and discovery. - Trust and safety. - EMNLP covers language-model architectures, training strategies, safety, evaluation, datasets, and open-source tooling. Airbnb’s 2025 publications show a strong emphasis on research that translates directly into marketplace performance. The most practical opportunities involve faster experimentation, context-aware ranking, multimodal listing understanding, and recommendation systems that help guests recover from overly restrictive searches.

Read original(opens in new tab)
grammarlyOriginal article

10 Best AI Assistants: Top Tools for Work, Writing, and Everyday Tasks (opens in new tab)

Modern AI assistants have evolved from general-purpose chatbots into specialized productivity tools that leverage Natural Language Processing (NLP) and Large Language Models (LLMs) to automate complex workflows. By selecting an assistant based on specific task relevance, integration depth, and technical capabilities like context window size, users can significantly reduce manual effort and context switching. Ultimately, the most effective tools are those that proactively support "in-flow" work rather than requiring users to step away from their primary applications. ### Technical Foundations of AI Assistants * Assistants use NLP to interpret the intent and tone behind everyday language, moving beyond the rigid menu-based structures of traditional software. * Responses are generated by LLMs trained on massive datasets, allowing the tools to recognize linguistic patterns and provide natural-sounding outputs. * Functionality is typically driven by prompts—typed or spoken requests—that allow the AI to summarize documents, refine messaging, or brainstorm project outlines. ### Evaluation Criteria for Professional Use * **Context Awareness:** This refers to the "context window," or the amount of information an AI can hold in its active memory; larger windows allow for the analysis of entire documents or long-term conversation history. * **Proactivity versus On-demand:** Some tools wait for a specific prompt, while others are "proactive," surfacing suggestions and refinements automatically as the user works. * **Integration Ecosystem:** High-value assistants operate as extensions within browsers (Chrome, Edge) or directly inside 100+ third-party apps to pull in relevant background info without manual data entry. * **Accuracy and Verification:** For research-heavy tasks, the best tools offer citations and references to mitigate the risk of "hallucinations" or incorrect data common in LLMs. * **Privacy and Security:** Professional-grade tools provide transparent data handling and storage policies, which is essential for teams managing sensitive information. ### Specialized Assistants and Use Cases * **Go:** A communication-focused assistant that works proactively within existing workflows to draft emails and improve clarity in real-time. * **ChatGPT:** A versatile, general-purpose tool best suited for technical problem-solving, coding support, and creative ideation, though it often requires manual context switching. * **Claude AI:** Optimized for high-volume text processing, making it the preferred choice for deep document analysis and complex, long-form revisions. To achieve the best results, users should audit their daily app usage and primary tasks—such as scheduling, coding, or drafting—before committing to a platform. Prioritizing an assistant that integrates directly into your most-used software will yield the highest productivity gains by eliminating the friction of copying and pasting data between windows.

grammarlyOriginal article

What Is an AI Assistant? Definition, Types, and Examples (opens in new tab)

AI assistants have evolved from simple command-driven tools into sophisticated digital partners that leverage natural language processing to streamline workplace productivity. By integrating large language models with real-time data and contextual awareness, these tools enable users to automate repetitive tasks and manage information more effectively. Ultimately, their value lies in their ability to bridge the gap between open-ended human intent and actionable digital output across diverse software environments. ### The Technical Framework of AI Interaction * **Natural Language Processing (NLP):** This technology allows assistants to interpret the nuance of everyday language, distinguishing between literal questions and requests for tonal adjustments or stylistic changes. * **Large Language Models (LLMs):** These models use machine learning patterns to predict and generate helpful responses rather than relying on a pre-written script. * **Context Windows:** Modern assistants maintain a "memory" of the current conversation or document, allowing them to refer back to earlier sections and maintain consistency across long-form projects. * **Tool Integration:** Many assistants function by connecting to external APIs, enabling them to check calendars, pull data from the web, or manage task lists within other applications. ### Functional Applications in Daily Workflows * **Content Synthesis:** Assistants can ingest lengthy documents or meeting recordings to produce condensed summaries, outlines, and key takeaways. * **Drafting and Revision:** Beyond simple generation, these tools help refine existing text for clarity, length, and professional tone. * **Ideation and Brainstorming:** Users can utilize AI to overcome the "blank page" problem by generating initial project structures or exploring different angles for a specific topic. * **Technical Support:** For developers, AI assistants can interpret error messages, generate code snippets, and explain complex technical concepts in plain language. To maximize the impact of these tools, users should focus on providing detailed prompts that provide clear context and intent. As AI assistants become more deeply embedded in browsers and operating systems, understanding the balance between their generative capabilities and their contextual limitations is essential for maintaining an efficient digital workflow.

grammarlyOriginal article

How to Create an AI Assistant Step by Step: A Beginner’s Guide (opens in new tab)

Creating a custom AI assistant is no longer restricted to engineers, as modern no-code tools and APIs allow users to build specialized agents for specific personal or professional workflows. By focusing on a narrow scope and selecting the right platform, individuals can gain greater control over data, behavior, and task efficiency than generic tools provide. Ultimately, the shift toward custom assistants reflects a move away from one-size-fits-all software toward personalized AI teammates integrated directly into daily work. ## The Anatomy of an AI Assistant * Digital assistants utilize Natural Language Processing (NLP) to interpret user intent and tone through conversational prompts. * Large Language Models (LLMs) serve as the underlying engine, recognizing language patterns to generate contextually relevant responses. * Advanced implementations, such as the "Go" assistant, operate within existing apps like email and documents to eliminate context switching and manual data entry. ## Strategic Drivers for Customization * **Personalization:** Tailoring the assistant’s tone and behavior ensures it supports specific tasks exactly as the user expects. * **Data Control:** Building a custom solution offers transparency into how data is used, which is critical for teams handling sensitive internal information. * **Efficiency and Innovation:** Customizing an assistant for a niche problem—like summarizing specific document types or automating recurring questions—reduces manual effort more effectively than general tools. * **Independence:** Creating a proprietary tool reduces reliance on third-party platforms that may change their pricing or feature sets. ## Defining the Core Mission * The most successful assistants focus on one primary responsibility rather than trying to handle every possible task. * Effective planning requires answering who the user is and what specific problem the assistant is meant to solve consistently. * Starting with a narrow scope, such as a dedicated writing assistant or a customer service bot, simplifies the testing and refinement process during the initial launch. ## Development Paths and Lifecycles * Users can choose between no-code platforms for rapid deployment or API-based configurations for higher flexibility and integration. * The development process follows a standard lifecycle: strategic planning, technical configuration, launch, and continuous improvement. * Ongoing monitoring is essential to ensure the assistant remains responsible, accurate, and aligned with evolving user needs. To build a successful AI assistant, start by identifying a single high-impact task and selecting a tool that matches your technical comfort level. Prioritizing a narrow focus during the initial build will allow for more effective monitoring and easier scaling as your requirements grow.