MCPcopy Create free account
hub / github.com/bab2min/tomotopy / PTModelObject

Method PTModelObject

src/python/handler/py_PT.cpp:8–38  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

6using namespace std;
7
8PTModelObject::PTModelObject(size_t tw, size_t minCnt, size_t minDf, size_t rmTop,
9 size_t k, std::optional<size_t> p, PyObject* alpha, float eta,
10 PyObject* seed, PyObject* corpus, PyObject* transform)
11{
12 tomoto::PTArgs margs;
13 margs.k = k;
14 if (alpha)
15 {
16 margs.alpha = broadcastObj<tomoto::Float>(alpha, margs.k,
17 [&]() { return "`alpha` must be an instance of `float` or `List[float]` with length `k` (given " + py::repr(alpha) + ")"; }
18 );
19 }
20 margs.eta = eta;
21 margs.p = p.value_or(0);
22 if (seed && seed != Py_None && !py::toCpp<size_t>(seed, margs.seed))
23 {
24 throw py::ValueError{ "`seed` must be an integer or None." };
25 }
26
27 if (margs.p == 0) margs.p = margs.k * 10;
28
29 inst = tomoto::IPTModel::create((tomoto::TermWeight)tw, margs);
30 if (!inst) throw py::ValueError{ "unknown `tw` value" };
31 isPrepared = false;
32 seedGiven = !!seed;
33 minWordCnt = minCnt;
34 minWordDf = minDf;
35 removeTopWord = rmTop;
36
37 insertCorpus(corpus, transform);
38}
39
40size_t DocumentObject::getPseudoDocId() const
41{

Callers

nothing calls this directly

Calls 1

reprFunction · 0.85

Tested by

no test coverage detected