using System.Threading; using xAiModels.Models; using xAiModels.Models.Dtos; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using System.Collections.Generic; namespace xAiApi.Interfaces { public interface IXAiServiceControllerBase { // #region Actions ... /// /// Ask Question and Get Response ... /// /// /// /// [HttpGet("AskText")] Task> AskText( [FromQuery] string question, CancellationToken cancellationToken = default ); /// /// Ask Question and Get Response Stream ... /// /// /// /// [HttpGet("AskTextStream")] Task AskTextStream( [FromQuery] string question, CancellationToken cancellationToken = default ); #endregion // #region Data Provided Actions ... /// /// Load AI Projects ... /// /// /// [HttpGet("LoadProjects")] Task>> LoadProjects( CancellationToken cancellationToken = default ); /// /// Ask Question and Get Response ... /// /// /// /// [HttpPost("Ask")] Task> Ask( [FromBody] XAiResponseRequest request, CancellationToken cancellationToken = default ); /// /// Ask Question and Get Response Stream ... /// /// /// /// [HttpPost("AskStream")] Task AskStream( [FromBody] XAiResponseRequest request, CancellationToken cancellationToken = default ); #endregion } }