Weekly Summary of AI topics

Overview

This week’s AI-focused discussions on Meta Discourse centered on making AI features feel more “native” and reliable—both in UX and in admin operations.

On the product side, Discourse shipped background AI image captions that improve accessibility and discovery without polluting post raw content, plus confirmed synergy with AI Translate for localized captions (Making post images more accessible with Discourse AI, search indexing notes, translation workflow). Data teams also got a major boost with AI-generated Data Explorer SQL directly in the plugin UI (Data Explorer :handshake: AI).

On the UX side, the docked composer for AI bot conversations continued to spark debate—especially the Enter-to-send behavior—leading to a community theme-component workaround and even a PR proposal for an admin toggle (Introducing a docked composer…, follow-up UX feedback, theme component fix, PR reference).

Operationally, there was practical troubleshooting around AI embeddings semantic search failing with a 500 due to mismatched embedding dimensions, resolved by recreating configuration with the correct dimension size (AI Embeddings Semantic Search returns 500 error, dimension mismatch log, solution). Meanwhile, AI Translate received improvements and fixes: an enhanced translation progress graph experience and a bug fix ensuring deleted content isn’t exposed/translated unnecessarily (AI Translation Progress Graph, Deleted posts still show full content…).


Interesting Topics

  • Background AI image captions (accessibility + search) without altering post raw (#Announcements ai ai-image-caption)
    nat announced a rework where captions are generated in the background, stored separately, and surfaced in screen readers/search/lightboxes instead of being inserted into the post body (Making post images more accessible with Discourse AI). loginerror asked whether captions are crawlable, and nat clarified they render into HTML as aria-description and are included in Discourse search, though external crawler weighting varies (crawler Q, aria-description answer). The thread also highlighted translation synergy—captions can be localized and edited per language inside the translation composer (AI Translate synergy).

  • Generate Data Explorer SQL with Discourse AI (and iteratively refine queries via prompt) (#Announcements data-explorer ai)
    Discourse shipped an AI helper inside Data Explorer so admins can either write SQL manually or have AI generate/modify queries on /new and /edit—with the preference remembered on-device (Data Explorer :handshake: AI). The release also connected back to prior community requests for a smarter “SQL helper” experience (Empower the SQL helper).

  • Docked AI-bot composer friction: Enter-to-send vs deliberate drafting (#Announcements composer ai ai-bot)
    In ongoing feedback, tobiaseigen described the docked composer as a “permanent change” that encourages accidental submission, preferring a slower/more deliberate UI for bot interactions (feedback). Others echoed frustration with Enter-to-send, especially when pasting multi-line troubleshooting content (more feedback, impact on longer replies). Workarounds like Shift+Enter were noted, but the usability debate continued (Shift+Enter suggestion, “no forgiveness” concern).

  • Community fix: theme component to revert Enter behavior for AI-bot messages (plus PR discussion) (#Theme component composer ai ai-bot)
    To address Enter-to-send pain, Lilly published a theme component that restores “Enter = newline” for AI bot message submissions (not chat), requiring click/tap to send (Bot enter button fix for Discourse AI). They later updated it to work whether the docked composer is enabled or not (follow-up fix). In the docked-composer feedback thread, Lilly also linked a proposed PR to add an admin site setting toggle (theme component announcement in context, PR reference).

  • Should Enter-to-send be site-wide admin setting or per-user preference? (#Announcements ai-bot composer)
    When Lilly leaned toward an admin-controlled toggle (admin toggle rationale), RGJ raised concerns about inconsistency across forums and argued a user preference may be better (preference vs site setting, cross-site inconsistency concern). Lilly noted a “proper” approach might be a broader user preference affecting more than just bot messages, but that it’s significantly more work (broader preference idea).

  • Troubleshooting: AI Embeddings Semantic Search 500 error caused by embedding dimension mismatch (#Self-hosting search ai)
    akanora reported semantic search returning a 500 while standard search worked (error report). After Falco confirmed an embeddings model must be configured (model setup check), logs revealed the root cause: expected 768 dimensions, got 3072 for Gemini embeddings (log details). Recreating the embeddings config and setting dimensions to 3072 resolved it (solution), with nat emphasizing that the “Run test” validates credentials but not the full semantic search process (clarification).

  • Custom sidebar links & sections can now be translated (content localization + dynaloc) (#Feature sidebar ai dynaloc content-localization)
    A long-running request to translate custom sidebar content was marked as completed, with nat pointing to the merged PR and sharing screenshots (completion update).

  • AI Translate progress graph improvements (performance + clarity + content-type breakdown) (#Data & reporting translation ai)
    nat delivered a significant UI/UX update to the translation progress graph, including cached timing indicators and progress broken down by content type (topics/posts/etc.) (translation graph update). LotusJeff confirmed the update is “way more useful and self-explanatory,” while flagging a minor help-text mismatch for “Eligible” (feedback).

  • Feature request: date picker for AI Translate “backfill after” settings (avoid topic/post mismatch) (#Feature ai dynaloc content-localization)
    Building on translation reporting improvements, LotusJeff requested a date-specific selector rather than “days in the past,” to keep topic/post translation windows aligned (request context). nat agreed and noted the UI used to display a running date, making the case for a clearer date-based setting (Request for a date picker…, agreement).

  • Provider compatibility: DeepSeek Open Platform “no response” traced to incomplete OpenAI API support (Support ai)
    In a Chinese-language support thread, AkarinLiu concluded the DeepSeek official Open Platform’s OpenAI-compatible API was functionally incomplete, and resolved the issue by switching to Xiaomi’s MIMO V2.5 (diagnosis, solution).


Activity

Thanks for reading, and I’ll see you again next week! :slight_smile:

Overview

AI-related discussion on Meta this week clustered around making Discourse AI outputs more reliable, more controllable, and less surprising.

On the quality front, sam kicked off a deeper look at improving report accuracy by layering validation workflows on top of the existing AI reporting pipeline (Improving accuracy of AI reporting through validation), building on earlier work like Discourse AI periodic summary reports, Meta’s own daily summary feedback, and the newer automation framework in Discourse workflows.

On the control and predictability side, translation behavior was a major theme: akanora reported Turkish translations becoming oddly archaic (Turkish translation is generating archaic/Ottoman-style language instead of modern Turkish), and Falco traced it to an overly “transformative” translator prompt—then shipped a fix (Falco’s fix details). That same change also connects to earlier concerns about translation “over-improving” the author’s tone (Language level of ai “translate to English”).

Finally, operational/admin concerns popped up: how to disable AI entirely (How do Disable AI), how to interpret “invalid JSON” structured output logs (Discourse AI: structured output response was not valid JSON), and requests for better cache/usage transparency in translation tooling (Allow clearing cache). Meanwhile, ongoing product polish continued via improvements to the docked composer UX for AI bot conversations (Introducing a docked composer for AI bot conversations), newly merged AI Translate settings UX (Request for a date picker in AI Translate settings), and broader ecosystem progress in the long-running chatbot plugin thread (Discourse Chatbot :robot:).


Interesting Topics

  • Validating AI reports with workflows (beyond “one-shot summarization”)
    sam outlined how Discourse AI reporting has historically been a simple pipeline—context → LLM → post—and proposed using workflows to add validation steps for higher accuracy (Improving accuracy of AI reporting through validation). The discussion explicitly ties into existing reporting features (Discourse AI periodic summary reports) and the public iteration loop via report critique threads (daily summary feedback).

  • “Agent skills” as a scalable way to manage AI bot behavior
    sam proposed structuring reusable “skills” as topics to avoid bloated system prompts and enable progressive disclosure (Giving Discourse AI agent skills). mcwumbly shared hands-on experience splitting one large prompt into multiple skill topics, and asked about automatic skill discovery rather than manually listing them (skills follow-up). The approach leans on ai custom tooling patterns (AI bot custom tools).

  • Turkish translations drifting into archaic/Ottoman-era language (and a prompt fix)
    akanora reported “Translate to Turkish” producing archaic phrasing like “Binaenaleyh” and “Velakin” (report). After clarifying this was the Edit menu translation tool (clarification), Falco adjusted the translator prompt to “keep to its lane” (fix explanation), and akanora confirmed it resolved the issue post-merge (confirmation).

  • Translation “improver” behavior raising language level (related to the Turkish fix)
    Moin pointed out that the same change that fixed Turkish should also address translations unintentionally “beautifying” language and tone (Language level of ai “translate to English”). This provides historical context for why “faithful translation” matters and how prompt wording can create surprising output.

  • Structured output logs: “not valid JSON” warnings, parsing edge cases, and what to do about them
    lilydjwg flagged log noise after an update: “structured output response was not valid JSON” despite valid-looking HTTP responses (initial report). Falco clarified it’s a warning and planned to downgrade it to INFO to reduce alarm (response), while lilydjwg argued it indicates a real bug in the escaping logic and suggested spec-aligned escaping boundaries (follow-up, example).

  • Admin policy question: disabling AI cleanly
    JDParker asked how to disable AI due to company policy (question), and Lilly provided the admin path via installed plugins (solution). Straightforward, but notable as more orgs formalize AI usage guidelines.

  • Requests for better transparency/control over translation caching
    darkpixlz asked for clearer translation-page dashboards and either shorter cache durations or a bypass mechanism (Allow clearing cache). This sits in the “ops ergonomics” bucket: understanding spend and seeing near-real-time changes.

  • Docked composer UX polish: “send shortcut” setting wired into core
    In the AI bot docked composer thread, keegan announced an update moving “send shortcut” to a core user setting and reusing it for AI bot conversations (Introducing a docked composer for AI bot conversations). It’s a small UX tweak, but affects daily usability for anyone doing lots of AI chat in Discourse.

  • AI Translate settings UX: date picker request merged
    nat confirmed a requested date picker enhancement for AI Translate settings was merged (Request for a date picker in AI Translate settings), reinforcing steady incremental improvement in content-localization tools.

  • Chatbot plugin progress: reasoning strategies, gating, tools rename, and security hardening
    merefield posted a consolidated PR summary for early August work in the chatbot ecosystem, including new reasoning strategies, a semantic blocked-question gate, consolidation work, renaming “Function”→“Tool”, and swapping to a safer calculator evaluator (Discourse Chatbot :robot:, plus follow-up screenshot/context in the next post).


Activity


Thanks for reading, and I’ll see you again next week! :slight_smile: