This repository was archived by the owner on Jul 4, 2025. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +16
-0
lines changed
Expand file tree Collapse file tree 2 files changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -145,6 +145,17 @@ void llamaCPP::warmupModel() {
145145 return ;
146146}
147147
148+ void llamaCPP::chatCompletionPrelight (
149+ const HttpRequestPtr &req,
150+ std::function<void (const HttpResponsePtr &)> &&callback) {
151+ auto resp = drogon::HttpResponse::newHttpResponse ();
152+ resp->setStatusCode (drogon::HttpStatusCode::k200OK);
153+ resp->addHeader (" Access-Control-Allow-Origin" , " *" );
154+ resp->addHeader (" Access-Control-Allow-Methods" , " POST, OPTIONS" );
155+ resp->addHeader (" Access-Control-Allow-Headers" , " *" );
156+ callback (resp);
157+ }
158+
148159void llamaCPP::chatCompletion (
149160 const HttpRequestPtr &req,
150161 std::function<void (const HttpResponsePtr &)> &&callback) {
Original file line number Diff line number Diff line change @@ -1868,12 +1868,17 @@ class llamaCPP : public drogon::HttpController<llamaCPP> {
18681868
18691869 // Openai compatible path
18701870 ADD_METHOD_TO (llamaCPP::chatCompletion, " /v1/chat/completions" , Post);
1871+ ADD_METHOD_TO (llamaCPP::chatCompletionPrelight, " /v1/chat/completions" ,
1872+ Options);
1873+
18711874 ADD_METHOD_TO (llamaCPP::embedding, " /v1/embeddings" , Post);
18721875
18731876 // PATH_ADD("/llama/chat_completion", Post);
18741877 METHOD_LIST_END
18751878 void chatCompletion (const HttpRequestPtr &req,
18761879 std::function<void (const HttpResponsePtr &)> &&callback);
1880+ void chatCompletionPrelight (const HttpRequestPtr &req,
1881+ std::function<void (const HttpResponsePtr &)> &&callback);
18771882 void embedding (const HttpRequestPtr &req,
18781883 std::function<void (const HttpResponsePtr &)> &&callback);
18791884 void loadModel (const HttpRequestPtr &req,
You can’t perform that action at this time.
0 commit comments