- Video: Watch Video
- Presentation: View Presentation
To build ABIs for a smart contract: sforge build
To bring up the validator: sanvil
To deploy contracts and mint USDC for sample purposes, run: bun packages/cli/src/cli.ts setup
To create the new IPO Cross, run: bun packages/cli/src/cli.ts create
To get the current clearing price, run: bun packages/cli/src/cli.ts get-price <IPO Cross address>
To submit orders, run: bun packages/cli/src/cli.ts submit-orders <IPO Cross address>
To finalize the auction, run: bun packages/cli/src/cli.ts finalize <IPO Cross address>
- Video: Watch Video
- Presentation: View Presentation
The Aptos Developer Chatbot is a multi-agent system designed to deliver precise, context-aware answers to Aptos developer queries. Leveraging retrieval-augmented generation (RAG) techniques, it extracts verified information directly from official Aptos resources—ensuring that answers are both accurate and relevant.
This solution consists of two key components:
-
Backend: A Python/Flask server powered by the crewAI framework. It orchestrates a multi-agent workflow where specialized research agents query various Aptos-related data sources in parallel. Their results are combined into a single, cohesive markdown-formatted response. The backend also manages API endpoints and conversation state, allowing for both single-turn and multi-turn interactions.
-
Frontend: A modern, TypeScript-based chatbot UI built with Next.js. The interface provides features such as suggested questions, conversation history, and an easily embeddable design for integration into existing Aptos documentation platforms like aptos.dev.
The heart of the system is its multi-agent architecture, which operates as follows:
-
API Interaction & Context Management:
- RESTful endpoints (e.g.,
/ask,/conversation) handle incoming queries and maintain conversation history. - Session context is preserved across interactions to provide coherent multi-turn dialogues.
- RESTful endpoints (e.g.,
-
Parallel Research with Specialized Agents:
-
The backend instantiates several research agents (each configured via YAML) to search distinct Aptos resources, such as core repositories, developer docs, and tutorials.
-
Using asyncio, these agents run concurrently, each performing its assigned research task to gather targeted information.
-
The concurrent operation ensures minimal latency and broad coverage of different information sources.
Sources:
-
-
Results Aggregation & Synthesis:
- A dedicated synthesis process (reporting workflow) aggregates outputs from all agents.
- This process uses retrieval-augmented generation (RAG) techniques to combine and clean the data into a final, concise answer formatted in markdown.
- The final response integrates essential insights from each agent, ensuring the answer is comprehensive and developer-friendly.
-
Chatbot UI Features:
Built with Next.js and TypeScript, the UI offers an intuitive chat interface, featuring:- Suggested Questions: Predefined queries (e.g., “How to deploy a Move module?”) to prompt user interaction.
- Conversation History: Display of previous interactions to maintain context.
- Embed-Ready Design: Easily integrated into existing Aptos documentation platforms for a seamless developer experience.
-
Seamless Communication:
The frontend communicates with the backend via REST API endpoints, ensuring prompt and interactive query responses.
-
Prerequisites:
- Python (>=3.10, <3.13)
- Required Python packages installed via pip
- Environment variables configured in a
.envfile (e.g.,OPENAI_API_KEY, GitHub tokens)
-
Installation:
pip install -r requirements.txt
-
Run the Backend:
python backend/aptos/src/aptos/main.py
The API will be available at http://localhost:8007.
-
Prerequisites:
- Node.js and npm (or yarn)
-
Installation:
cd aptos-ui npm install -
Run the Frontend:
npm run dev
Access the chatbot UI at http://localhost:3000.
The Aptos Developer Chatbot represents a robust, multi-agent architecture that efficiently answers technical questions by aggregating data from trusted Aptos resources. Its parallel research workflow minimizes response time while ensuring accuracy, and its TypeScript-based UI offers a seamless, feature-rich user experience. This makes the chatbot an ideal tool for integrating into existing Aptos developer portals, enhancing support and productivity.
Happy coding, and enjoy your enhanced Aptos experience!