Asosiy kontentga o‘tish
AI qo‘llanmalari

O‘zingizning matn va fayllaringizdan AI kelib chiqishi belgilarini olib tashlang

Ushbu qo‘llanmada siz egalik qiladigan yoki qayta ishlashga vakolatingiz bo‘lgan kontentdagi Unicode tashuvchilar, hujjat metama’lumotlari va qo‘llab-quvvatlanadigan kelib chiqish belgilarini tekshirish hamda olib tashlash uchun Python xizmati va agent ko‘nikmasi bo‘lgan watermarks-remover dasturini o‘rnatish va ishga tushirish tushuntiriladi.

O‘zingizning matn va fayllaringizdan AI belgilarini olib tashlang

Watermarks-remover nima qiladi

watermarks-remover matn va qo‘llab-quvvatlanadigan fayl formatlaridagi AI kelib chiqishi belgilarini tekshirish va tozalash uchun mo‘ljallangan agent ko‘nikmasi hamda Python xizmati hisoblanadi. U sizga tegishli yoki qayta ishlashga ruxsat berilgan materiallarda maxfiylik, tadqiqot va kontent tozaligi uchun ishlatiladi.

Agent ko‘nikmasi yupqa HTTP mijozidir. Unda tozalash amalga oshirilmaydi va agent xostida Python bo‘lishi talab etilmaydi. Buning o‘rniga u Python standart kutubxonasi yordamida alohida ishga tushirilgan xizmatga vazifalarni yuboradi.

Loyiha ishlarini uch yo‘nalishga ajratadi:

  • Matn qatlami A: ko‘rinmas Unicode tashuvchilarini, noodatiy bo‘shliqlarni, ikki yo‘nalishli boshqaruv belgilarini va teg belgilarini deterministik tarzda olib tashlaydi.
  • Matn qatlami B: statistik token tanlash watermarklarini kamaytirish uchun keng ko‘lamli qayta yozishdan foydalanadi. Bu eng yaxshi urinish hisoblanadi va uslub yoki ohangni o‘zgartirishi mumkin.
  • Fayllarni tozalash: ko‘plab fayl turlaridan qo‘llab-quvvatlanadigan C2PA, EXIF, XMP, hujjat xususiyatlari va konteyner metama’lumotlarini olib tashlaydi.

Hech bir vosita vendor detektori kontentni aniqlashni to‘xtatishiga kafolat bera olmaydi. Asl fayllarni saqlang, har bir tozalangan natijani tekshiring va loyihadan faqat o‘zingizga tegishli yoki qayta ishlashga ruxsatingiz bor kontentda foydalaning.

Asosiy imkoniyatlar va qo‘llab-quvvatlanadigan formatlar

Asosiy skriptlar Python 3.10 yoki undan yangiroq versiyasini talab qiladi va faqat standart kutubxonadan foydalanadi. Mavjud bo‘lsa, c2patool, exiftool va qpdf kabi ixtiyoriy vositalardan foydalaniladi.

Qo‘llab-quvvatlanadigan tozalash obyektlari

  • Tasvirlar: PNG, JPEG, WebP, AVIF, HEIC, BMP, GIF, TIFF va SVG.
  • Hujjatlar: PDF, DOCX, XLSX, PPTX, EPUB va ODT.
  • Matn va veb fayllar: HTML va Markdown, jumladan qo‘llab-quvvatlanadigan metama’lumotlar, JSON-LD, AI frontmatter kalitlari va A qatlami matn belgilarini o‘z ichiga oladi.
  • Media konteynerlari: MP4, MOV, M4A, M4V, WAV, MP3 va FLAC.

Noma’lum formatlar avtomatik tozalanmaydi. Matnga xos buyruqlar ikkilik fayllarni ham rad etadi va sizni umumiy fayl vositalaridan foydalanishga yo‘naltiradi.

Muhim cheklovlar

Asosiy tozalash soft-bound C2PA yoki sof piksel, audio va video watermarklarini qamrab olmaydi. PDF tozalash strukturaviy olib tashlash uchun qpdf dasturiga muhtoj, chunki metama’lumotlarni inkremental tahrirlash tiklanishi mumkin bo‘lgan baytlarni qoldiradi. Ixtiyoriy Ghostscript bosqichi ichki PDF tasvirlaridagi metama’lumotlarni ham qayta ishlashi mumkin.

Aniqlash tozalashdan alohida amalga oshiriladi. MarkLLM, keyed-Gumbel, Claude seams va SynthID tasvir ballari uchun ixtiyoriy detektorlar tanlov asosida yoqiladi va mavjud bo‘lmaganda yumshoq tarzda ishlamay qolishga mo‘ljallangan.

Agent ko‘nikmasini o‘rnatish

Repozitoriyani klonlang yoki yuklab oling, uning katalogiga kiring va o‘rnatuvchini ishga tushiring. Quyidagi buyruq shaxsiy Claude Code konfiguratsiyasi uchun xizmatga asoslangan to‘liq ko‘nikmani o‘rnatadi:

python3 install_skill.py --skill remove-ai-marks --target claude-code

Mavjud o‘rnatish maqsadlari:

  • --target claude-code ko‘nikmani ~/.claude/skills/<skill> ostiga o‘rnatadi.
  • --target claude-project --project-dir PATH ko‘nikmani PATH/.claude/skills/<skill> ostiga o‘rnatadi.
  • --target cowork bulutdagi Skills interfeysi orqali yuklash uchun dist/<skill>.zip faylini yaratadi.
  • --target cursor ko‘nikmani ~/.cursor/skills/<skill> ostiga o‘rnatadi.

Yetkazib berilgan ko‘nikmalar ro‘yxatini ko‘rish uchun python3 install_skill.py --list buyrug‘idan foydalaning. Repozitoriy to‘liq remove-ai-marks ko‘nikmasi hamda o‘zini o‘zi ta’minlaydigan, faqat matn bilan ishlovchi clean-user-facing-text ko‘nikmasini taqdim etadi. Mavjud o‘rnatishlar --force ishlatilmasa, zaxiralanadi. Checkout katalogidan jonli tahrirlash uchun --link parametrini qo‘shing.

Claude Code plaginini o‘rnatish

Claude Code foydalanuvchilari marketplace plaginini bevosita o‘rnatishlari mumkin:

/plugin marketplace add guillaumemeyer/watermarks-remover
/plugin install watermarks-remover@watermarks-remover

Shundan so‘ng ko‘nikmalar /watermarks-remover:remove-ai-marks va /watermarks-remover:clean-user-facing-text sifatida yuklanadi. Plaginni quyidagi buyruq bilan yangilang:

/plugin marketplace update watermarks-remover

Grok uchun ko‘nikmani bog‘lash

mkdir -p ~/.grok/skills
ln -sfn "$(pwd)/skills/remove-ai-marks" ~/.grok/skills/remove-ai-marks

Xizmatni ishga tushirish

Mahalliy HTTP xizmatini repozitoriydan ishga tushiring:

make serve

Bundan tashqari, server skriptini bevosita ishga tushirishingiz mumkin:

python3 service/scripts/server.py --host 127.0.0.1 --port 8765

Standart manzil http://127.0.0.1:8765. Xizmat boshqa joyda ishlasa, ko‘nikma uchun WATERMARKS_SERVICE_URL o‘zgaruvchisini o‘rnating. Server sukut bo‘yicha loopback interfeysiga ulanadi, bu esa uni boshqa mashinalarga bevosita oshkor qilishning oldini oladi.

Xizmat javob berayotganini tekshiring:

curl -s http://127.0.0.1:8765/health

Health endpoint ok va xizmat versiyasini o‘z ichiga olgan obyektni qaytaradi.

Buyruqlar satridan fayllarni tekshirish va tozalash

Eng xavfsiz ish jarayoni avval faylni tekshirish, tozalangan natijani yangi yo‘lga yozish va natijani asl fayl bilan solishtirishdan iborat.

SCRIPTS=service/scripts

python3 "$SCRIPTS/inspect_file.py" draft.md
python3 "$SCRIPTS/clean_file.py" draft.md -o draft.cleaned.md
python3 "$SCRIPTS/clean_file.py" photo.png -o photo.cleaned.png
python3 "$SCRIPTS/clean_file.py" notes.docx -o notes.cleaned.docx

Matn va ikkilik konteynerlar uchun inspect_file.py hamda clean_file.py skriptlaridan foydalaning. Bu buyruqlar faylga mos qo‘llab-quvvatlanadigan tozalagichni avtomatik tanlaydi.

A qatlami matn belgilarini tozalash

Oddiy matn kiritmasidagi ko‘rinmas va tahrirlashga asoslangan Unicode tashuvchilarini quyidagi buyruq yordamida tekshiring:

python3 "$SCRIPTS/inspect_text.py" draft.md

So‘ng tozalangan nusxa yarating va statistikani chiqaring:

python3 "$SCRIPTS/clean_text.py" draft.md -o draft.cleaned.md --stats

A qatlami ko‘rinadigan nasrga nisbatan deterministik va yo‘qotishsiz bo‘lishi uchun mo‘ljallangan. Ushbu matn buyruqlariga DOCX, PDF, rasmlar yoki boshqa ikkilik fayllarni bermang; buning o‘rniga fayl buyruqlaridan foydalaning.

B qatlami qayta yozilishini tayyorlash

Statistik matn suv belgilari oddiy belgilarni o‘chirishni emas, qayta yozishni talab qiladi. Odatiy holatda qayta yozish buyrug‘i so‘rovni chiqaradi:

python3 "$SCRIPTS/rewrite_text.py" draft.md --backend print-prompt --strength paraphrase

B qatlami iterativ va imkon qadar bajariladi. U asl uslub va ohangga sodiqlikni kamaytirishi mumkin. Sifat suv belgisi tozaligidan muhimroq bo‘lsa, loyiha asl nasrni saqlagan holda A qatlami va fayl tozalashdan foydalanishni tavsiya qiladi.

HTTP API’dan foydalanish

Xizmat tekshirish, aniqlash, tozalash, paketli ishlov berish, imkoniyatlarni aniqlash va OpenAPI spetsifikatsiyasini taqdim etadi.

  • GET /health xizmat holati va versiyasini bildiradi.
  • GET /capabilities mavjud ixtiyoriy vositalar va backendlarni bildiradi.
  • GET /openapi.json OpenAPI 3.0.3 spetsifikatsiyasini qaytaradi.
  • POST /inspect kiritma turi, shubhali holat va hisobotni qaytaradi.
  • POST /detect sozlangan aniqlagich natijalarini qaytaradi.
  • POST /clean tozalangan base64 ma’lumotlari va hisobotni qaytaradi.
  • POST /inspect/batch va POST /clean/batch har bir so‘rovda 50 tagacha faylni qayta ishlaydi.

Quyidagi misol Markdown faylini base64 formatida kodlaydi va uni tozalash endpointiga yuboradi:

WM="http://127.0.0.1:8765"
curl -s "$WM/health"
curl -s -X POST "$WM/clean" -H 'Content-Type: application/json' \
  -d "{\"file\": \"$(base64 < notes.md | tr -d '\n')\", \"name\": \"notes.md\"}"

Bearer autentifikatsiyasini majburiy qilish uchun WATERMARKS_SERVER_API_KEY ni o‘rnating. Agar mahalliy ishlab chiqish mashinasidan tashqarida joylashtirsangiz, autentifikatsiya va tegishli tarmoq boshqaruvlarini saqlab qoling.

Xizmatni Docker bilan ishga tushirish

Asosiy obrazni faqat o‘qish mumkin bo‘lgan fayl tizimi va vaqtinchalik katalog bilan yarating va ishga tushiring:

make docker-core-build
docker run --rm -p 127.0.0.1:8765:8765 --read-only --tmpfs /tmp watermarks-remover

Docker Compose bir nechta profilni qo‘llab-quvvatlaydi:

docker compose up -d
docker compose --profile harness up -d
docker compose --profile heavy up -d
  • Odatiy profil asosiy xizmatni ishga tushiradi.
  • harness profili MarkLLM va MarkDiffusion komponentlarini qo‘shadi.
  • heavy profili mahalliy tarzda yaratilgan CtrlRegen va SynthID komponentlarini qo‘shadi.

Core, MarkLLM va MarkDiffusion obrazlari GHCR’da e’lon qilinadi. CtrlRegen va SynthID baholagichi yuqori oqim litsenziyasi sababli faqat mahalliy foydalanish uchun qoladi. Ixtiyoriy sozlamalar uchun .env.example faylini .env ga ko‘chiring; asosiy matn tozalash uchun qo‘shimcha sozlamalar talab qilinmaydi.

Hook yordamida avtomatik tekshiruvlarni yoqish

Agent ko‘nikmasi ko‘rsatma hisoblanadi, shuning uchun model uni chaqirish yoki chaqirmaslikni hal qiladi. Hook esa deterministikroq: mos keladigan vosita chaqiruvi sodir bo‘lganda ishga tushadi.

Claude Code plagini Write, Edit, MultiEdit va NotebookEdit uchun PostToolUse hookini ro‘yxatdan o‘tkazadi. U service/scripts/hook_written_file.py skriptini ikki rejimdan birida chaqiradi:

  • check: odatiy rejim belgilar haqida xabar beradi, ammo faylni o‘zgartirmaydi.
  • clean: qo‘llab-quvvatlanadigan belgilarni joyida o‘chiradi va modelni xabardor qiladi.

Rejimni plaginning Hook mode sozlamasi orqali tanlang yoki quyidagini o‘rnating:

WATERMARKS_HOOK_MODE=clean

Plaginsiz hookni ~/.claude/settings.json faylida qo‘lda ro‘yxatdan o‘tkazishingiz mumkin. Hooklar agent yozgan fayllar va commitdan oldingi nazoratni qamrab oladi, ammo matnni bevosita chat stenogrammalarida tozalash imkon qadar bajariladi va ko‘nikmaga bog‘liq.

Commitdan oldingi tekshiruvni qo‘shish

Belgili fayllar Git commitiga kirishidan oldin ularni to‘xtatish uchun repozitoriyning tekshiruv hookini .pre-commit-config.yaml fayliga qo‘shing:

repos:
  - repo: https://github.com/guillaumemeyer/watermarks-remover
    rev: v0.5.0
    hooks:
      - id: watermarks-remover-check

watermarks-remover-check hooki belgilar topilganda xatolik bilan tugaydi. Muqobil watermarks-remover-clean hooki fayllarni joyida tozalaydi va undan foydalanish aniq ravishda ixtiyoriydir.

Ilg‘or maslahatlar

Asl nusxalarni saqlang va natijalarni taqqoslang

Iloji boricha tozalangan ma’lumotlarni alohida chiqish yo‘liga yozing. Bu ayniqsa B qatlami qayta yozishlari va murakkab hujjat konteynerlari uchun muhim, chunki qayta ishlash nasr, ichki resurslar yoki ilovaga xos xususiyatlarga ta’sir qilishi mumkin.

To‘g‘ri PDF vositalarini o‘rnating

Haqiqiy strukturaviy PDF tozalash kerak bo‘lganda qpdf dan foydalaning. README exiftoolning o‘zi eski baytlarni qayta tiklash mumkin bo‘lib qolishiga olib keladigan inkremental yangilashni bajarishi haqida ogohlantiradi. Metadata ichki rasmlarda mavjud bo‘lishi mumkin bo‘lsa, ixtiyoriy Ghostscript chuqur ishlovidan foydalaning.

Aniqlash va tozalashni turli amallar sifatida ko‘ring

Tozalash amali qo‘llab-quvvatlanadigan tashuvchilar va metama’lumotlarni olib tashlaydi, aniqlagich esa sozlangan suv belgisi sxemasi mavjudligini baholaydi. Masalan, MarkLLM tekshiruvi faqat ayni konfiguratsiya ostida mazmunli bo‘ladi, keyed-Gumbel qayta ijrosi esa generatsiya kalitini talab qiladi. Bu vositalar barcha ta’minotchilar uchun universal manba emas.

B qatlamini ehtiyotkorlik bilan tanlang

Agar B qatlamidan foydalansangiz, loyiha ayni turdagi belgini yana qo‘llash ehtimolini kamaytirish uchun kelib chiqish modeli bo‘lmagan modeldan foydalanishni tavsiya qiladi. Kuchli parafraz ohang va aniqlikka zarar yetkazishi mumkinligi sababli, yozuv sifatini saqlash ustuvor bo‘lsa, undan foydalanmang.

Qo‘shimcha backendlarni ko‘rib chiqing

service/scripts/ papkasidagi bootstrap skriptlari tasvirlarni baholash uchun reverse-SynthID, piksel domenidan olib tashlash uchun CtrlRegen, sozlangan matn suv belgilarini tekshirish uchun MarkLLM va tasvirdagi suv belgilari bo‘yicha tajribalar uchun MarkDiffusion’ni sozlashi mumkin. Bu backendlarning talablari va cheklovlari turlicha; ularni yoqishdan oldin sozlash skriptlarini ko‘rib chiqing.

Mas’uliyatli foydalanish

watermarks-remover’dan faqat o‘zingizga tegishli yoki qayta ishlashga ruxsatingiz bo‘lgan kontentda maxfiylik, tadqiqot va texnik tozalik maqsadlarida foydalaning. U akademik firibgarlik yoki sun’iy intellekt yaratgan materialni inson yozgan deb yolg‘on da’vo qilish uchun mo‘ljallanmagan. Amaldagi qonunlar va muassasa siyosatlariga rioya qiling.

Loyiha MIT litsenziyasi asosida taqdim etiladi. Relizlar va manba kodini watermarks-remover GitHub repozitoriysidan topishingiz mumkin.

Xulosa

watermarks-remover deterministik matn tozalash, ko‘plab fayl konteynerlaridan metama’lumotlarni olib tashlash, ixtiyoriy aniqlash backendlari, agent integratsiyasi, hook’lar va HTTP API’ni birlashtiradi. Avval tekshirishdan boshlang, asl nusxani saqlab qo‘ying, mos keladigan eng tor tozalash qatlamini qo‘llang va natijani ko‘rib chiqing; hech bir detektor natijasini kafolatlangan deb qabul qilmang.