MCPcopy Create free account
hub / github.com/NGT-labs/NGT / optimizeNumberOfEdgesForANNG

Method optimizeNumberOfEdgesForANNG

python/src/ngtpy.cpp:549–574  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

547 using NGT::GraphOptimizer::GraphOptimizer;
548
549 int optimizeNumberOfEdgesForANNG(
550 const std::string path, // anng index path
551 int numOfQueries,
552 int numOfResults,
553 int numOfThreads,
554 float targetAccuracy,
555 int targetNoOfObjects,
556 int numOfSampleObjects,
557 int maxNoOfEdges) {
558
559 NGT::GraphOptimizer::ANNGEdgeOptimizationParameter p;
560
561 p.noOfQueries = numOfQueries > 0 ? numOfQueries : p.noOfQueries;
562 p.noOfResults = numOfResults > 0 ? numOfResults : p.noOfResults;
563 p.noOfThreads = numOfThreads >= 0 ? numOfThreads : p.noOfThreads;
564 p.targetAccuracy = targetAccuracy > 0.0 ? targetAccuracy : p.targetAccuracy;
565 p.targetNoOfObjects = targetNoOfObjects >= 0 ? targetNoOfObjects : p.targetNoOfObjects;
566 p.noOfSampleObjects = numOfSampleObjects > 0 ? numOfSampleObjects : p.noOfSampleObjects;
567 p.maxNoOfEdges = maxNoOfEdges > 0 ? maxNoOfEdges : p.maxNoOfEdges;
568
569 auto edge = NGT::GraphOptimizer::optimizeNumberOfEdgesForANNG(path, p);
570 if (!logDisabled) {
571 std::cerr << "the optimized number of edges is" << edge.first << "(" << edge.second << ")" << std::endl;
572 }
573 return edge.first;
574 }
575
576};
577

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected