Avatud lähtekoodiga plagiaadituvastaja.
Ainus plagiaadituvastusteenus, millel on tootmiskeskkonna pilvetasand ja täielikult avatud lähtekoodiga mootor. Sama kood, mis töötab aadressil noplag.com, on saadaval GitHubis aadressil github.com/NoplagLabs/noplag-engine — kontrolli, klooni või paigalda see omaenda serverisse.
Commit, mida kontrollite noplag.com’is, on ka GitHubis.
Ei mingit „avatud lähtekoodi moodi“ lähenemist. Ei mingit ainult SDK hoidlat, mille mootorikood on suletud. Chunker, sõrmejälje looja, päringukaskaad ja raporti koostaja on kõik samas Apache 2.0 hoidlas, millest ehitatakse meie tootmiskonteiner.
Plagiaadituvastuse mootor, mis töötab noplag.com-ile — tükeldamine, winnowing-sõrmejäljed, otsingukaskaad, joondus ja raporti kokkupanek. Apache 2.0.
- KEEL
- Python · Rust
- Litsents
- Apache 2.0
- Kaastöötajad
- 38
- Commitid
- 2 847
- VIIMANE VÄLJAANNE
- v0.4.2 · 3 päeva tagasi
- CI
- läbitud · 412 testi
Suletud lähtekood ei olnud funktsioon, vaid viga.
Kõik enne meid tulnud plagiaadikontrollid küsisid, et usaldage musta kasti. Usaldage tulemust. Usaldage meetodit, mida te ei näe. Usaldage, et algoritmi ei treenitud nii, et see liigselt märgiks teie kirjutamisstiili. Me valisime vastupidise tee.
Mida te näha ei saa, seda te usaldada ei saa
Sarnasustulemus on number ilma päritolu kirjelduseta. Oli see lausete kattuvus, parafraasipõhine oletus, AI-detektori möödalaskmine? Kas ESL kirjutamisstiil oli arvesse võetud? Suletud kontrollid ei ütle — nende eelis ON, et te ei saa küsida. Me ei nõustu, et see on plagiaadituvastuse hind.
Avatud lähtekoodiga toode, mitte avatud lähtekoodiga turundus
Apache 2.0 repositoorium aadressil github.com/NoplagLabs/noplag-engine ei ole piiratud kliendi SDK, kus võrdlusalgoritm on suletud koodis. Chunker, winnowing-fingerprinter, päringukaskaad, joondus, duplikaatide eemaldus ja raporti koostamine on kõik samas Docker konteineris, mis töötab ka noplag.com-is. Pilvetasand lisab korpuse ja veebipõhised otsinguadapterid, mitte mootorit ennast.
Mida see teie jaoks tähendab
Lugege algoritmi, enne kui usaldate tulemust. Hostige mootorit oma infrastruktuuris, kui teie dokumendid ei tohi sealt väljuda. Forkige, kui meie tee erineb teie omast. Auditeerige, kuidas chunkide lõigud sarnastusnumbrisse sulanduvad — ja vaielge meiega avalikus isikus, kui märkate viga.
Neljakihiline otsingukaskaad. Diagramm, mitte metafoor.
Iga kiht kitsendab kandidaate odava-kallima täpsusvahetusega. Kõik kihid on avatud repositooriumis. Pilv lisab ainult korpuse + veebiotsingu adapterid.
Winnowing-sõrmejäljed
GIN-indekseeritud 64-bit kattuvus bigint[] veergudel Postgresis. Filtreerib miljardid kandidaatsooned top-K tulemusteks O(log n) päringu kohta.
MinHash LSH — v1.1 plaanis
Ligikaudne Jaccardi koefitsient parafraseeritud ja kergelt muudetud koopiate tuvastamiseks, et leida need, mis L1-l jäävad märkamata pärast sisulist ümberkirjutamist. Kavandatud, kuid pole veel rakendatud — see ei ole avalikus repositooriumis.
Lausete embed-damine — v1.2 plaanis
Mitmekeelsed SBERT-vektorid koos pgvector ANN-iga semantiliste ümberkirjutuste ja keelteülese kopeerimise tuvastamiseks. Kavandatud, kuid pole veel rakendatud — see ei ole avalikus repositooriumis.
Reaalajas veebikontroll
Google'i ja Brave'i adapterid kontrollivad reaalajas top-N kandidaate otse veebist. See töötab pilvetasandil tasuliste plaanide puhul; adapterid ei kuulu avatud lähtekoodiga paketti.
noplag.toml.Mis tegelikult on repos.
Pole SDK ümbris. Pole kärbitud klient. Detekteerimisalgoritm tervikuna — sama struktuur, mis ehitab tootmiskonteineri.
- src/noplag_engine/pakett
- chunking/lause- ja liugakna chunkerid
- fingerprinting/winnowing 64-bitised hash’id
- retrieval/Praegu L1; L2 / L3 / LW selles paketis veel puuduvad
- l1_winnowing.pyGIN-kattuvuse top-K
- fingerprint_df.pydokumendi sageduse statistika
- stop_list.pymitteeristavate sõrmejälgede filter
- alignment/seed-and-extend intervallide ühendamine
- workflows/Temporaliga juhitud kontrolli töövoog
- api/FastAPI HTTP-liides
- reports/tõstetud kohtade märkimine + PDF-i eksport
- tests/412 testi · pytest + omaduspõhised + integratsioonitestid
- migrations/Alembicu skeemimuudatused
- Dockerfilesama konteineripilt kui tootmises
- docker-compose.ymliseseisev paigaldus: kiirstart
- LICENSEApache 2.0
- README.mdarhitektuur + kiirstart
- 12,4kGitHubi tähed
- 38kaastöötajad
- 2 847commitid
- 412testid CI-s
- 1:1pilv / repo võrdsus
Kolm asja, mida suletud kontroll ei lase kontrollida.
Suletud kontroll annab numbri. 'Plagiaat või parafraas' lävi, n-gram kattuvuse ja semantilise sarnasuse kaalud, kuidas lühikesed tulemused visatakse välja — kõik koodis suletud. Te ei saa taasesitada, audit ei saa reaalset koodi üle vaadata, ja vea korral pole viite commiti.
Mida saate kontrollida: iga lävi, iga kaal, iga dedupeerimisreegel asub src/noplag_engine/-is. Avage GitHubis märgistatud release, leidke commit, millega teie kontroll jooksis (X-Engine-Commit päises), ja kontrollige matemaatikat rida haaval.
Kuhu teie dokument kadus pärast üleslaadimist? Kas see salvestati? Lisati ühisesse DB-sse, kuhu teised kliendid ligi pääsevad? Kas see saadeti kolmanda osapoole AI-tuvastajale? Suletud kontrollid vastavad turunduskeeles. Koodiradu nad ei näita.
Mida saate kontrollida: workflows/ näitab kõik, kus sisend loetakse, hash’itakse, salvestatakse ja kustutatakse. migrations/ kaust näitab kõik veerud, mida see puudutab. api/ näitab mis läheb mootorist välja ja kust piiri saab ise muuta.
Must kast “63% sarnane” on põhjuseta otsus. Kas oli 63% 12 lühikese lõigu peale? Üks pikk lõik? Otsingu viga? Kas ESL kirjutamise stiili kaal oli erinev? Saate numbri, aga matemaatikat, mis selle tegi, mitte.
Mida saate kontrollida: alignment/ paljastab seemne-pikenduse lõikude liitmise. reports/ näitab, kuidas chunkide lõigud koonduvad üldprotsendiks. Saate sama dokumendi sama commitiga uuesti läbi lasta, kontrollida kõik lõigud üle ja argumenteerida GitHubis.
Kaks võimalust sama mootoriga.
Enamik kasutajaid valib pilvetasandi aadressil noplag.com — hallatud Postgres + Temporal + Coolify, korpus on juba indekseeritud ning veebipõhiste otsinguadapteritega on kaasas kehtivad API võtmed. Iseseisev paigaldus on mõeldud organisatsioonidele, kelle dokumendid ei tohi infrastruktuurist väljuda: kloonige repositoorium, seadistage oma Postgres ja Redis, suunake mootor oma korpusele (või importige OpenAlex + Common Crawl meie manifestist) ning lisage oma Google'i/Brave'i võtmed. Sama mootor, samad algoritmid, sama raporti struktuur — muutub ainult halduspiir.
Lugege juhendit isehosti jaoksAvatud lähtekoodi küsimused, mida me tegelikult saame.
- Kas mootor on tõesti sama kood mis noplag.com-is?
- Jah. Repo Dockerfile ehitab konteineri, mida me kasutame. Iga check noplag.com’is töötab selle commitiga, commit hash tuleb X-Engine-Commit päises, seega saate tulemuse kinnistada tagitud release’ile. Pilvetasand lisab ainult korpuse ja veebiotsingu võtmed — algoritm ei muutu.
- Miks Apache 2.0, mitte AGPL või BSL?
- Apache 2.0 lubab organisatsioonidel isehostida ilma juriidilise ülevaate koormata. AGPL muutuks äriliseks tõkkeks, mis oleks vastupidine meie eesmärgile — soovime, et audiitorid ja forkerid päriselt kasutaksid seda. Kaitstav osa on korpus ja operatiivne tase, mitte algoritm.
- Kas saab täielikult ilma pilvetasandita hostida?
- Jah. Kloonige repositoorium, käivitage `docker compose up`, seadistage oma Postgres ja Redis ning importige avaliku korpuse manifest (OpenAlex + Common Crawl + Wikipedia). Layer-W adapterid on laiendatavad — lisage oma Google'i/Brave'i API võtmed või jätke Layer W vahele, kui vajate ainult indekseeritud korpuse võrdlust.
- Kas Noplag Database (esitatud kasutajadokumendid) on avatud?
- Ei. Noplag Database sisaldab kasutaja esitatud dokumente ja püsib pilvetasandil — Apache-2.0 teiste inimeste tekstiga oleks vale. Esitatud dokumendid lisatakse vaikimisi; sellest saab loobuda. Mootori kood, millega Noplag Database päringut tehakse, on avatud; andmed ise mitte.
- Mis saab AI detektorist — tuleb ka avatud?
- Jah. Tehisintellekti tuvastus lisandub peagi — see on v1.2 plaanis, kuid pole kohe alguses saadaval — ja see tuleb välja avatud kujul nagu kõik muu: perplexity mudeli ühendus, kalibreerimine, ESL-eelarvamuse kohandus ja otsusevahemikud asuvad kõik kaustas src/noplag_engine/ai_detection/. Mudeli kaalud ise on avatud lähtekoodiga (Qwen 2.5 1.5B 4-bit CPU tasemel, valikuline Mistral 7B GPU tasemel). Kutsestakus ei kasutata suletud kolmanda osapoole detektorit.
- Kuidas raporteerida viga sobitamises?
- Tehke avalik GitHubi issue koos minimaalsete reprodokumendiga (või kirjeldage valepositiivset lõiku). Kõik toimub avalikult. Turvaprobleemid mingepealt aadressile security@noplag.com.
- Kas pilvetasandil jääb alati sama algoritm kui repos?
- Jah, see on meie poliitika. Kui peaksime kunagi katsetuseks lisama ainult pilves töötava funktsiooni, oleks see funktsioonilipu taga ja avatud lähtekoodiga vaikimisi; ametlik algoritm jääb põhiharusse. Kui me sellest kõrvale kaldume, näed seda vastuse päises ja avalikes väljalaskemärkmetes.
- Mis on kaastöö mudel?
- Oodatud on probleemid ja väikesed PRid. Suuremate muudatuste korral — nagu uued otsingukihid, uued korpuse adapterid, uued keeled — alustage esmalt RFC-ga, et arutelud oleks avalikud. PR, mis toob sisse suletud sõltuvusi, telering-tagastusi või vendor-lukke, läbi ei lähe.
- Kas on hostitud isehosti varianti? (Hallatud Apache 2.0)
- Veel mitte. Pilvetasandi Enterprise pakub pühendatud infrastruktuuri ja BYO-korpust, mis katab enamus selle küsimuse põhjuseid. Hallatud isehosti SKU on teekaardis v1.2 juures.
- Kuidas see mõjutab hinda?
- Ei mõjuta. Pilvehind põhineb korpusel + tööjõu hinnal (Hetzner + Coolify + Stripe + Lago + veebiotsingu API kulu), mitte mootori litsentsil. Isehost on tasuta. Jääbki nii.
Lugege algoritmi. Seejärel käivitage ise.
github.com/NoplagLabs/noplag-engine on Apache 2.0 litsentsiga. Pilveteenus aadressil noplag.com kasutab sama commit'i. Mõlemad variandid annavad sama mootorit — vali lahendus, mis sobib sinu andmete piirangutega.