@@ -10,6 +10,7 @@ import (
1010 "github.com/mudler/LocalAI/core/gallery"
1111 "github.com/mudler/LocalAI/core/http/elements"
1212 "github.com/mudler/LocalAI/core/http/endpoints/localai"
13+ "github.com/mudler/LocalAI/core/p2p"
1314 "github.com/mudler/LocalAI/core/services"
1415 "github.com/mudler/LocalAI/internal"
1516 "github.com/mudler/LocalAI/pkg/model"
@@ -53,6 +54,20 @@ func RegisterUIRoutes(app *fiber.App,
5354
5455 app .Get ("/" , auth , localai .WelcomeEndpoint (appConfig , cl , ml , modelStatus ))
5556
57+ if p2p .IsP2PEnabled () {
58+ app .Get ("/p2p" , auth , func (c * fiber.Ctx ) error {
59+ summary := fiber.Map {
60+ "Title" : "LocalAI - P2P dashboard" ,
61+ "Version" : internal .PrintableVersion (),
62+ "Nodes" : p2p .GetAvailableNodes (),
63+ "IsP2PEnabled" : p2p .IsP2PEnabled (),
64+ }
65+
66+ // Render index
67+ return c .Render ("views/p2p" , summary )
68+ })
69+ }
70+
5671 // Show the Models page (all models)
5772 app .Get ("/browse" , auth , func (c * fiber.Ctx ) error {
5873 term := c .Query ("term" )
@@ -87,7 +102,9 @@ func RegisterUIRoutes(app *fiber.App,
87102 "AllTags" : tags ,
88103 "ProcessingModels" : processingModelsData ,
89104 "AvailableModels" : len (models ),
90- "TaskTypes" : taskTypes ,
105+ "IsP2PEnabled" : p2p .IsP2PEnabled (),
106+
107+ "TaskTypes" : taskTypes ,
91108 // "ApplicationConfig": appConfig,
92109 }
93110
@@ -243,6 +260,7 @@ func RegisterUIRoutes(app *fiber.App,
243260 "ModelsConfig" : backendConfigs ,
244261 "Model" : c .Params ("model" ),
245262 "Version" : internal .PrintableVersion (),
263+ "IsP2PEnabled" : p2p .IsP2PEnabled (),
246264 }
247265
248266 // Render index
@@ -261,6 +279,7 @@ func RegisterUIRoutes(app *fiber.App,
261279 "Title" : "LocalAI - Talk" ,
262280 "ModelsConfig" : backendConfigs ,
263281 "Model" : backendConfigs [0 ].ID ,
282+ "IsP2PEnabled" : p2p .IsP2PEnabled (),
264283 "Version" : internal .PrintableVersion (),
265284 }
266285
@@ -282,6 +301,7 @@ func RegisterUIRoutes(app *fiber.App,
282301 "ModelsConfig" : backendConfigs ,
283302 "Model" : backendConfigs [0 ].ID ,
284303 "Version" : internal .PrintableVersion (),
304+ "IsP2PEnabled" : p2p .IsP2PEnabled (),
285305 }
286306
287307 // Render index
@@ -296,6 +316,7 @@ func RegisterUIRoutes(app *fiber.App,
296316 "ModelsConfig" : backendConfigs ,
297317 "Model" : c .Params ("model" ),
298318 "Version" : internal .PrintableVersion (),
319+ "IsP2PEnabled" : p2p .IsP2PEnabled (),
299320 }
300321
301322 // Render index
@@ -316,6 +337,7 @@ func RegisterUIRoutes(app *fiber.App,
316337 "ModelsConfig" : backendConfigs ,
317338 "Model" : backendConfigs [0 ].Name ,
318339 "Version" : internal .PrintableVersion (),
340+ "IsP2PEnabled" : p2p .IsP2PEnabled (),
319341 }
320342
321343 // Render index
@@ -330,6 +352,7 @@ func RegisterUIRoutes(app *fiber.App,
330352 "ModelsConfig" : backendConfigs ,
331353 "Model" : c .Params ("model" ),
332354 "Version" : internal .PrintableVersion (),
355+ "IsP2PEnabled" : p2p .IsP2PEnabled (),
333356 }
334357
335358 // Render index
@@ -349,6 +372,7 @@ func RegisterUIRoutes(app *fiber.App,
349372 "Title" : "LocalAI - Generate audio with " + backendConfigs [0 ].Name ,
350373 "ModelsConfig" : backendConfigs ,
351374 "Model" : backendConfigs [0 ].Name ,
375+ "IsP2PEnabled" : p2p .IsP2PEnabled (),
352376 "Version" : internal .PrintableVersion (),
353377 }
354378
0 commit comments