|
21 | 21 | //! use utoipa::OpenApi;
|
22 | 22 | //! use utoipa_swagger_ui::SwaggerUi;
|
23 | 23 | //!
|
24 |
| -//! use mistralrs::{AutoDeviceMapParams, ChatCompletionChunkResponse, ModelDType, ModelSelected}; |
| 24 | +//! use mistralrs::{ |
| 25 | +//! AutoDeviceMapParams, ChatCompletionChunkResponse, ModelDType, ModelSelected, initialize_logging, |
| 26 | +//! }; |
25 | 27 | //! use mistralrs_server_core::{
|
26 | 28 | //! chat_completion::{
|
27 | 29 | //! ChatCompletionResponder, OnChunkCallback, OnDoneCallback, create_chat_streamer,
|
|
51 | 53 | //!
|
52 | 54 | //! #[derive(Clone)]
|
53 | 55 | //! pub struct AppState {
|
54 |
| -//! pub mistral_state: SharedMistralRsState, |
| 56 | +//! pub mistralrs_state: SharedMistralRsState, |
55 | 57 | //! pub db_create: fn(),
|
56 | 58 | //! }
|
57 | 59 | //!
|
58 | 60 | //! #[tokio::main]
|
59 | 61 | //! async fn main() {
|
| 62 | +//! initialize_logging(); |
| 63 | +//! |
60 | 64 | //! let plain_model_id = String::from("meta-llama/Llama-3.2-1B-Instruct");
|
61 | 65 | //! let tokenizer_json = None;
|
62 | 66 | //! let arch = None;
|
|
96 | 100 | //! .await
|
97 | 101 | //! .unwrap();
|
98 | 102 | //!
|
99 |
| -//! let mistral_base_path = "/api/mistral"; |
| 103 | +//! let mistralrs_base_path = "/api/mistral"; |
100 | 104 | //!
|
101 |
| -//! let mistral_routes = MistralRsServerRouterBuilder::new() |
| 105 | +//! let mistralrs_routes = MistralRsServerRouterBuilder::new() |
102 | 106 | //! .with_mistralrs(shared_mistralrs.clone())
|
103 | 107 | //! .with_include_swagger_routes(false)
|
104 |
| -//! .with_base_path(mistral_base_path) |
| 108 | +//! .with_base_path(mistralrs_base_path) |
105 | 109 | //! .build()
|
106 | 110 | //! .await
|
107 | 111 | //! .unwrap();
|
108 | 112 | //!
|
109 |
| -//! let mistral_doc = get_openapi_doc(Some(mistral_base_path)); |
| 113 | +//! let mistralrs_doc = get_openapi_doc(Some(mistralrs_base_path)); |
110 | 114 | //! let mut api_docs = ApiDoc::openapi();
|
111 |
| -//! api_docs.merge(mistral_doc); |
| 115 | +//! api_docs.merge(mistralrs_doc); |
112 | 116 | //!
|
113 | 117 | //! let app_state = Arc::new(AppState {
|
114 |
| -//! mistral_state: shared_mistralrs, |
| 118 | +//! mistralrs_state: shared_mistralrs, |
115 | 119 | //! db_create: mock_db_call,
|
116 | 120 | //! });
|
117 | 121 | //!
|
118 | 122 | //! let app = Router::new()
|
119 | 123 | //! .route("/", get(root))
|
120 | 124 | //! .route("/chat", post(custom_chat))
|
121 | 125 | //! .with_state(app_state.clone())
|
122 |
| -//! .nest(mistral_base_path, mistral_routes) |
| 126 | +//! .nest(mistralrs_base_path, mistralrs_routes) |
123 | 127 | //! .merge(SwaggerUi::new("/api-docs").url("/api-docs/openapi.json", api_docs));
|
124 | 128 | //!
|
125 | 129 | //! let listener = tokio::net::TcpListener::bind("0.0.0.0:3000").await.unwrap();
|
|
151 | 155 | //! State(state): State<Arc<AppState>>,
|
152 | 156 | //! Json(oai_request): Json<ChatCompletionRequest>,
|
153 | 157 | //! ) -> ChatCompletionResponder {
|
154 |
| -//! let mistral_state = state.mistral_state.clone(); |
| 158 | +//! let mistralrs_state = state.mistralrs_state.clone(); |
155 | 159 | //! let (tx, mut rx) = create_response_channel(None);
|
156 | 160 | //!
|
157 |
| -//! let (request, is_streaming) = match parse_request(oai_request, mistral_state.clone(), tx).await |
| 161 | +//! let (request, is_streaming) = match parse_request(oai_request, mistralrs_state.clone(), tx).await |
158 | 162 | //! {
|
159 | 163 | //! Ok(x) => x,
|
160 |
| -//! Err(e) => return handle_chat_completion_error(mistral_state, e.into()), |
| 164 | +//! Err(e) => return handle_chat_completion_error(mistralrs_state, e.into()), |
161 | 165 | //! };
|
162 | 166 | //!
|
163 | 167 | //! dbg!(request.clone());
|
164 | 168 | //!
|
165 |
| -//! if let Err(e) = send_request(&mistral_state, request).await { |
166 |
| -//! return handle_chat_completion_error(mistral_state, e.into()); |
| 169 | +//! if let Err(e) = send_request(&mistralrs_state, request).await { |
| 170 | +//! return handle_chat_completion_error(mistralrs_state, e.into()); |
167 | 171 | //! }
|
168 | 172 | //!
|
169 | 173 | //! if is_streaming {
|
|
185 | 189 | //! });
|
186 | 190 | //!
|
187 | 191 | //! let streamer =
|
188 |
| -//! create_chat_streamer(rx, mistral_state.clone(), Some(on_chunk), Some(on_done)); |
| 192 | +//! create_chat_streamer(rx, mistralrs_state.clone(), Some(on_chunk), Some(on_done)); |
189 | 193 | //!
|
190 | 194 | //! ChatCompletionResponder::Sse(streamer)
|
191 | 195 | //! } else {
|
192 |
| -//! let response = process_non_streaming_chat_response(&mut rx, mistral_state.clone()).await; |
| 196 | +//! let response = process_non_streaming_chat_response(&mut rx, mistralrs_state.clone()).await; |
193 | 197 | //!
|
194 | 198 | //! match &response {
|
195 | 199 | //! ChatCompletionResponder::Json(json_response) => {
|
196 | 200 | //! dbg!(json_response);
|
| 201 | +//! (state.db_create)(); |
197 | 202 | //! }
|
198 | 203 | //! _ => {
|
199 | 204 | //! //
|
|
0 commit comments