Converses | AI-Powered Assistant | RAG-Based Knowledge System | Fluid Attacks Help

Introduction

Warning
Caution
This product is still in its early stages of development. It is still being used only internally and does not use any real customer data.
Converses is Fluid Attacks’ AI-powered assistant product, which is designed to answer questions about Fluid Attacks in general. It is a Retrieval-Augmented Generation (RAG)-based solution, which means it uses actual documentation along with advanced AI to provide context-aware responses.

Public Oath

  1. Converses can provide users with relevant answers to questions about Fluid Attacks by retrieving the most up-to-date information based on our knowledge base.
  2. The assistant does not currently store or use any real customer data, focusing on delivering helpful responses based on Fluid Attacks’ documentation.
  3. Fluid Attacks is committed to constant learning and enhancement, refining Converses’ retrieval and response capabilities by looking for a new stack that better aligns with such goals.

Architecture

The Converses component consists of two main parts:
  1. Google Chat integration: Leverages AWS Kendra for knowledge base search and Amazon Bedrock for AI inference to provide intelligent, context-aware responses.
  2. Knowledge base updater: Synchronizes content from Zoho Desk to AWS Kendra.

Google Chat integration

The Google Chat integration provides a conversational interface for internal users to interact with the Fluid Attacks knowledge base. It connects a Google Chat workspace to the Converses component, which allows users to ask questions about Fluid Attacks and get answers from the knowledge base.

Key features
  1. Message reception: Receives messages from Google Chat via lambda url invocation
  2. Authentication: Validates requests using Google App credentials
  3. AI processing: Uses Amazon Bedrock with Claude Sonnet 4 for intelligent responses
  4. Knowledge search: Queries AWS Kendra index for relevant information
Architecture

Fluid Attacks Google Chat integration architecture

Components
  1. Receiver lambda: Handles incoming google chat requests
  2. Worker lambda: Processes messages and generates and delivers responses to the Google Chat app

Knowledge Base Updater

The knowledge base updater synchronizes articles from Zoho Desk to AWS Kendra, ensuring the chatbot has access to the latest information. It is triggered by a scheduled event from AWS EventBridge.

Key features
  1. Scheduled updates: Runs automatically via AWS EventBridge (Wednesdays and Fridays at 5 a.m. UTC)
  2. Incremental sync: Only processes articles modified since the last successful update
Architecture
Fluid Attacks Knowledge Base updater architecture

Update process
  1. Authentication: Obtains Zoho Desk access token
  2. Data source sync: Starts Kendra data source sync job
  3. Content retrieval: Fetches articles from Zoho Desk API
  4. Document processing: Converts and indexes articles in Kendra
  5. Cleanup: Removes unpublished articles and revokes tokens

Infrastructure

The infrastructure provides all necessary AWS resources for the Converses component.

AWS

  1. AWS Kendra: Knowledge base search and indexing
  2. Amazon Bedrock: AI model inference with Claude Sonnet 4
  3. AWS Lambda: Serverless compute for chat processing messages processing
  4. AWS KMS: Encryption for sensitive data
  5. CloudWatch: Logging and monitoring
  6. Bedrock Guardrails: Content safety and filtering

Key resources

  1. Kendra Index: fluid_kb_articles_index - Main knowledge base
  2. Data source: zoho_desk - Custom data source for Zoho content
  3. Lambda functions: Receiver and worker functions for chat processing
  4. Inference profile: Bedrock model configuration
  5. Guardrails: Content safety policies

Data Security and Privacy

Converses does not use any Personally Identifiable Information (PII) from Fluid Attacks’ customers. The information used is all the documents present in Fluid Attacks' knowledge base, which can be accessed by anyone looking for information about Fluid Attacks’ services and usage of its platform.

Security Features

Content safety (Bedrock Guardrails)

  1. Prompt attack protection: High-strength filtering for prompt injection
  2. Content filtering: Blocks sexual, violent, hate, and misconduct content
  3. Regex patterns: Custom patterns for sensitive information

Access control

  1. IAM Roles: Separate roles for each Lambda function
  2. Least privilege: Minimal required permissions
  3. KMS encryption: Encrypted storage for sensitive data

Monitoring and logging

CloudWatch integration

  1. Log groups: Centralized logging for all components
  2. Metrics: Performance and error tracking
  3. Alarms: Automated alerting for failures

LangSmith Integration

  1. Tracing: Detailed request/response tracing
  2. Usage tracking: Token consumption monitoring
  3. Performance analytics: Response time and quality metrics

Logs

  1. Receiver Lambda: /aws/lambda/google-chat-receiver-function
  2. Worker Lambda: /aws/lambda/google-chat-worker-function
  3. KB Updater: Scheduled task logs in CloudWatch

Contributing

Please read the contributing page first.
Idea
Tip
Have an idea to simplify our architecture or noticed docs that could use some love? Don't hesitate to open an issue or submit improvements.