Leveraging OPENAI LLMs for AI-Driven Network Devices Emulation with SSH and REST API Access


AI-Driven Network Emulation Agent Project

This project is an AI-driven network emulation agent designed to mimic real network device behavior using LangChain and LangGraph.

Core Components

1. Responder Agent

  • Functionality:
    • Processes user queries such as:
      • CLI Command: show interfaces
      • API Request: GET /restconf/data/ietf-interfaces:interfaces
    • Provides realistic outputs in:
      • CLI Format
      • JSON (API Response)

2. State Agent

  • Purpose:
    • Tracks the emulator’s state to ensure that responses accurately reflect configuration changes.

3. Execution Interfaces

  • SSH Server:
    • Enables users to execute Ansible playbooks on the emulator.
  • REST API Server:
    • Supports executing Python or Terraform via RESTCONF for network automation.

Challenges Faced

  • State Accuracy:
    • Keeping responses consistent with real-time configuration changes remains complex.
  • Realistic Response Timing:
    • Simulating real device processing delays accurately is a significant challenge.
  • Precision in CLI & API Responses:
    • Achieving outputs that authentically mimic real network devices is still a work in progress.
  • RAG & Prompt Engineering:
    • Numerous attempts have been made to fix retrieval-augmented generation issues, yet inconsistencies persist.

Open Questions

  • Can AI truly emulate real device performance?
    • How reliably can AI handle real-time state changes compared to physical hardware?
    • Will the response timings ever perfectly match those of actual devices under load?
    • To what extent can AI-generated outputs mimic vendor-specific behavior?

Collaboration Opportunity

This is an ongoing experiment, and there’s still much to improve. If you’re interested in AI, network automation, or LLM-based emulation, I’d love to hear from you. Contributions, feedback, and collaborative ideas are highly welcome!

Let’s work together to push the boundaries of network emulation! :rocket:


Feel free to reach out or share your thoughts. Your ideas and contributions are welcome!