From 1b6117a8289fd9ea0b378e5a1f75e2c05793234d Mon Sep 17 00:00:00 2001 From: Devin Logan Date: Thu, 4 Sep 2025 13:44:18 -0400 Subject: [PATCH 1/3] restructure overview page, add side panel info --- fern/products/ask-fern/ask-fern.yml | 2 + .../pages/getting-started/how-it-works.mdx | 56 +++++++++++ .../getting-started/what-is-ask-fern.mdx | 93 +++++-------------- 3 files changed, 81 insertions(+), 70 deletions(-) create mode 100644 fern/products/ask-fern/pages/getting-started/how-it-works.mdx diff --git a/fern/products/ask-fern/ask-fern.yml b/fern/products/ask-fern/ask-fern.yml index 42e2acd0..835d0321 100644 --- a/fern/products/ask-fern/ask-fern.yml +++ b/fern/products/ask-fern/ask-fern.yml @@ -3,6 +3,8 @@ navigation: contents: - page: What is Ask Fern? path: ./pages/getting-started/what-is-ask-fern.mdx + - page: How it works + path: ./pages/getting-started/how-it-works.mdx - link: Customer showcase href: https://buildwithfern.com/showcase#ask-fern-customers - section: Configuration diff --git a/fern/products/ask-fern/pages/getting-started/how-it-works.mdx b/fern/products/ask-fern/pages/getting-started/how-it-works.mdx new file mode 100644 index 00000000..36f1d8a2 --- /dev/null +++ b/fern/products/ask-fern/pages/getting-started/how-it-works.mdx @@ -0,0 +1,56 @@ +--- +title: How Ask Fern works +description: Learn how Ask Fern's RAG system transforms your documentation into an intelligent, searchable knowledge base with automatic indexing, semantic search, and AI-powered responses. +--- + +Ask Fern is a **Retrieval Augmented Generation (RAG)** system that appears as a side panel on your documentation site, transforming your documentation into an intelligent, searchable knowledge base. + +## Visual design and behavior + +Ask Fern appears as a resizable side panel on your documentation site. Users can drag to resize it or use the expand/minimize button to control their viewing experience. + +Key behaviors: +- **Adaptive layout** – Seamlessly integrates with all [Fern Docs layouts](/docs/configuration/what-is-docs-yml#layout-configuration) +- **Persistent navigation** – Side panel stays open as users browse different pages or click links provided by the AI responses +- **Document-specific queries** – Users can ask questions about the current page through a dropdown option +- **Mobile optimization** – Expands to full screen when users start typing on mobile devices + +The interface maintains your site's design language while providing a familiar chat experience that feels native to your documentation. + +## How it works + +The main parts of the Ask Fern system are: + +* **Content indexing** – Fern automatically processes your documentation pages, + breaking them into semantic chunks and converting each chunk into a vector + using sentence embedding models. They're stored in a database that serves as + Ask Fern's search index. +* **Query processing** – When users ask questions, Ask Fern vectorizes their + query and searches the database to find the most relevant documentation + chunks. +* **Response generation** – Ask Fern uses the retrieved chunks as context to + generate accurate answers with [citations](/ask-fern/features/citations) for the user. If the initial context isn't sufficient, it performs an additional keyword search. + + + +Each Ask Fern user query follows these steps: + +```mermaid +sequenceDiagram + autonumber + participant U as User + participant C as /chat Endpoint + participant V as Documentation Database + participant A as Ask Fern + + U->>C: Submit question via Ask Fern searchbox + C->>C: Convert query to vector + C->>V: Search for relevant chunks + V->>C: Return matching documents + C->>A: Send query + context + A->>V: Perform additional keyword search if needed + V->>A: Return additional chunks + A->>A: Generate response + A->>U: Return answer with citations +``` + \ No newline at end of file diff --git a/fern/products/ask-fern/pages/getting-started/what-is-ask-fern.mdx b/fern/products/ask-fern/pages/getting-started/what-is-ask-fern.mdx index 0213788c..6161ac9e 100644 --- a/fern/products/ask-fern/pages/getting-started/what-is-ask-fern.mdx +++ b/fern/products/ask-fern/pages/getting-started/what-is-ask-fern.mdx @@ -1,29 +1,29 @@ --- title: What is Ask Fern? -subtitle: Let your customers find answers in your documentation instantly. +description: Let your customers find answers in your documentation instantly. --- -Ask Fern is available on the [Pro plan](https://buildwithfern.com/pricing#Docs) of Fern Docs. Billing is by usage. - -## Overview +Ask Fern is Fern's AI Search feature that indexes your documentation and provides an interface for your end users to ask questions and get answers. It appears as a side panel on your documentation site. - -Accessing AI Search - +Ask Fern helps you: -Ask Fern is Fern's AI Search feature that indexes your documentation and provides an interface for your users to ask questions and get answers. It helps our customers +- **Reduce support burden** – Enable your users to quickly find answers in your documentation without contacting your support team. +- **Accelerate user onboarding** – Help users integrate your product faster by surfacing relevant code samples and guides. +- **Identify documentation gaps** – Understand where your docs need improvement through user search patterns and feedback. -- **Decrease the time to find needed information** – Help users quickly locate crucial documentation without navigating through a maze of tabs and endpoints. -- **Integrate your product faster** – Accelerate implementation with ready-to-use code samples that demonstrate practical applications. -- **Surface where your docs have gaps** – Identify documentation weaknesses through user feedback and search patterns. - - -Preview of AI Search - +Ask Fern is available on the [Pro plan](https://buildwithfern.com/pricing#Docs) of Fern Docs. Billing is by usage. -## Features +## Get started + + Learn about Ask Fern's interface, behavior, and technical architecture. + + + + +## Features + + + - - Users can "Ask AI" or search your docs directly with Algolia. - - - - Create seamless UX by offering a one-stop-shop for all API questions. - - - - -## How it works - -Ask Fern is a **Retrieval Augmented Generation (RAG)** system built on top of your documentation site that transforms your documentation into an intelligent, searchable knowledge base. The main parts of the Ask Fern system are: - -* **Content indexing** – Fern automatically processes your documentation pages, - breaking them into semantic chunks and converting each chunk into a vector - using sentence embedding models. They're stored in a database that serves as - Ask Fern's search index. -* **Query processing** – When users ask questions, Ask Fern vectorizes their - query and searches the database to find the most relevant documentation - chunks. -* **Response generation** – Ask Fern uses the retrieved chunks as context to - generate accurate answers with [citations](/ask-fern/features/citations) for the user. If the initial context isn't sufficient, it performs an additional keyword search. - -### Life of a query - -Each Ask Fern user query follows these steps: - -```mermaid -sequenceDiagram - autonumber - participant U as User - participant C as /chat Endpoint - participant V as Documentation Database - participant A as Ask Fern - - U->>C: Submit question via Ask Fern searchbox - C->>C: Convert query to vector - C->>V: Search for relevant chunks - V->>C: Return matching documents - C->>A: Send query + context - A->>V: Perform additional keyword search if needed - V->>A: Return additional chunks - A->>A: Generate response - A->>U: Return answer with citations -``` \ No newline at end of file + \ No newline at end of file From 877b980dc791cdd2a355cfe380f00f55bba009fa Mon Sep 17 00:00:00 2001 From: Devin Logan Date: Thu, 4 Sep 2025 16:51:20 -0400 Subject: [PATCH 2/3] add rbac page --- fern/products/ask-fern/pages/features/rbac.mdx | 8 ++++++++ .../ask-fern/pages/getting-started/how-it-works.mdx | 7 ++++--- .../ask-fern/pages/getting-started/what-is-ask-fern.mdx | 8 ++++++++ 3 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 fern/products/ask-fern/pages/features/rbac.mdx diff --git a/fern/products/ask-fern/pages/features/rbac.mdx b/fern/products/ask-fern/pages/features/rbac.mdx new file mode 100644 index 00000000..090de595 --- /dev/null +++ b/fern/products/ask-fern/pages/features/rbac.mdx @@ -0,0 +1,8 @@ +--- +title: Role-based access control for Ask Fern +description: Ask Fern respects your documentation's role-based access control settings. +--- + +Ask Fern automatically respects the [role-based access control (RBAC) settings configured in your documentation]((/docs/authentication/rbac). When users query Ask Fern, they only receive answers from documentation they have permission to access based on their assigned roles. + +This works at all levels, from entire sections down to individual pages and conditional content within pages. \ No newline at end of file diff --git a/fern/products/ask-fern/pages/getting-started/how-it-works.mdx b/fern/products/ask-fern/pages/getting-started/how-it-works.mdx index 36f1d8a2..f2845b65 100644 --- a/fern/products/ask-fern/pages/getting-started/how-it-works.mdx +++ b/fern/products/ask-fern/pages/getting-started/how-it-works.mdx @@ -27,7 +27,7 @@ The main parts of the Ask Fern system are: Ask Fern's search index. * **Query processing** – When users ask questions, Ask Fern vectorizes their query and searches the database to find the most relevant documentation - chunks. + chunks. If you have [role-based access control](/docs/authentication/rbac) configured, Ask Fern filters results based on the user's permissions. * **Response generation** – Ask Fern uses the retrieved chunks as context to generate accurate answers with [citations](/ask-fern/features/citations) for the user. If the initial context isn't sufficient, it performs an additional keyword search. @@ -45,11 +45,12 @@ sequenceDiagram U->>C: Submit question via Ask Fern searchbox C->>C: Convert query to vector + C->>C: Check user roles (if RBAC enabled) C->>V: Search for relevant chunks - V->>C: Return matching documents + V->>C: Return matching documents user can access C->>A: Send query + context A->>V: Perform additional keyword search if needed - V->>A: Return additional chunks + V->>A: Return additional chunks user can access A->>A: Generate response A->>U: Return answer with citations ``` diff --git a/fern/products/ask-fern/pages/getting-started/what-is-ask-fern.mdx b/fern/products/ask-fern/pages/getting-started/what-is-ask-fern.mdx index 6161ac9e..5ffacc87 100644 --- a/fern/products/ask-fern/pages/getting-started/what-is-ask-fern.mdx +++ b/fern/products/ask-fern/pages/getting-started/what-is-ask-fern.mdx @@ -62,4 +62,12 @@ Ask Fern helps you: Add custom documents to Ask Fern. + + Ask Fern enforces your documentation's role-based permissions. + + \ No newline at end of file From f1c4e591c6df824a5afddd33c33485432c87c968 Mon Sep 17 00:00:00 2001 From: Devin Logan Date: Thu, 4 Sep 2025 16:51:31 -0400 Subject: [PATCH 3/3] formatting nit --- fern/products/ask-fern/pages/features/rbac.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fern/products/ask-fern/pages/features/rbac.mdx b/fern/products/ask-fern/pages/features/rbac.mdx index 090de595..a2c96f0a 100644 --- a/fern/products/ask-fern/pages/features/rbac.mdx +++ b/fern/products/ask-fern/pages/features/rbac.mdx @@ -3,6 +3,6 @@ title: Role-based access control for Ask Fern description: Ask Fern respects your documentation's role-based access control settings. --- -Ask Fern automatically respects the [role-based access control (RBAC) settings configured in your documentation]((/docs/authentication/rbac). When users query Ask Fern, they only receive answers from documentation they have permission to access based on their assigned roles. +Ask Fern automatically respects the [role-based access control (RBAC) settings configured in your documentation](/docs/authentication/rbac). When users query Ask Fern, they only receive answers from documentation they have permission to access based on their assigned roles. This works at all levels, from entire sections down to individual pages and conditional content within pages. \ No newline at end of file