Belgelerinizi AI boru hatlarına getirin — Python’dan, yerinde, tek bir pip install ile.
Bugün GroupDocs.Markdown for Python via .NET‘in ilk genel sürümünü PyPI’de yayımlıyoruz. Kütüphane PDF, Word, Excel, EPUB ve 20+ başka formatı temiz, anlamsal Markdown’a dönüştürüyor — LLM’lerin, RAG boru hatlarının ve statik site üreticilerinin en iyi çalıştığı format.
Eğer .NET sürümünü Eylül ayında takip ettiyseniz (veya 26.3’teki tam API revizyonunu incelediyseniz), mantık aynı: belge biçimlendirmesi anlamsal bilgi taşır ve bu anlamsal yapıyı korumak, bir RAG sisteminin iyi yanıtlar vermesini sağlar. Önceki gönderi problemi (OCR yapısı düzleştirir, LLM’ler markdown ister) ve çözümü (belgeyi dolaşan ve Markdown üreten DOM tabanlı bir render) derinlemesine ele alıyor — burada bu hikayeyi tekrarlamayacağız.
Bunun yerine, Python geliştiricileri için yeniliklere odaklanalım.
Neler elde edersiniz
- Tek bir tekerlek, çalışma zamanı bağımlılığı yok.
pip install groupdocs-markdown-net.NET çalışma zamanını ve ihtiyaç duyduğu tüm yerel kütüphaneleri içinde barındıran bağımsız bir tekerlek indirir.dotnetkurulumu, Microsoft Office, Adobe Acrobat ya da bulut hizmetleri gerekmez. - Çapraz platform. Windows x64/x86, Linux x64, macOS x64 ve Apple Silicon (ARM64). Python 3.5‑den 3.14’e kadar.
- Pythonik bir API. Sınıflar
PascalCase, metod ve özelliklersnake_case, enum değerleriUPPER_SNAKE_CASEkullanır. Bağlam yöneticileri (context managers) yüklü belgeleri belirli bir şekilde serbest bırakır. - Gerçekten async. Her statik ve örnek metodun bir
_asynckarşılığı vardır. Dosya I/O asenkronik ve CPU‑ağır dönüşüm bir işçi iş parçacığında çalışır —asynciodöngünüz serbest kalır. - AI‑ajan dostu. Kurulu tekerlek bir
AGENTS.mddosyası içerir; böylece kodlama asistanları (Claude Code, Cursor, GitHub Copilot, Codex) API yüzeyini, idiomatik kullanım kalıplarını ve sorun giderme ipuçlarını otomatik keşfeder. Dokümantasyon ayrıcallms.txt, tek‑dosya korpus (llms-full.txt), sayfa‑sayfa Markdown ve bir MCP sunucusu olarak yayımlanır — ayrıntılar için aşağıdaki AI‑friendly by design bölümüne bakın.
Başlarken
pip install groupdocs-markdown-net
En basit dönüşüm tek satırda yapılır:
from groupdocs.markdown import MarkdownConverter
# Bir dizeye dönüştür
md = MarkdownConverter.to_markdown("business-plan.docx")
# Ya da doğrudan bir dosyaya yaz
MarkdownConverter.to_file("business-plan.docx", "business-plan.md")
Hepsi bu — yapılandırma, seçenek ya da kalıp yok. Değerlendirme modu ilk 3 sayfayı işler ve bir filigran ekler. Sınırlamaları kaldırmak için bir lisans uygulayın:
from groupdocs.markdown import License
License().set_license("path/to/license.lic")
Ya da GROUPDOCS_LIC_PATH ortam değişkenini ayarlayın; bu değişken içe aktarma sırasında otomatik olarak uygulanır.
Desteklenen formatlar
Python paketi, .NET kütüphanesiyle aynı format çeşitliliğini destekler:
- PDF —
.pdf - Word / Rich Text —
.doc,.docx,.docm,.dot,.dotx,.dotm,.rtf,.odt,.ott - Elektronik tablolar —
.xls,.xlsx,.xlsb,.xlsm,.csv,.tsv,.ods,.ots - eKitaplar —
.epub,.mobi - Metin / İşaretleme / Yardım —
.txt,.xml,.chm
Pythonik örnekler
Dönüşüm seçenekleri ve resim stratejileri
from groupdocs.markdown import (
MarkdownConverter,
ConvertOptions,
MarkdownFlavor,
ExportImagesToFileSystemStrategy,
)
strategy = ExportImagesToFileSystemStrategy("output/images")
strategy.images_relative_path = "images" # 
options = ConvertOptions()
options.flavor = MarkdownFlavor.GIT_HUB
options.heading_level_offset = 1 # # Title -> ## Title
options.include_front_matter = True # YAML üst verisini ekle
options.image_export_strategy = strategy
MarkdownConverter.to_file("report.docx", "output/report.md", convert_options=options)
Dönüşüm olmadan belge inceleme
from groupdocs.markdown import MarkdownConverter
info = MarkdownConverter.get_info("business-plan.docx")
print(f"{info.file_format}, {info.page_count} pages, author: {info.author}")
Şifre korumalı bir dosya yükleme
from groupdocs.markdown import MarkdownConverter, LoadOptions, FileFormat
load_opts = LoadOptions(FileFormat.DOCX)
load_opts.password = "secret"
MarkdownConverter.to_file("protected.docx", "output.md", load_options=load_opts)
Akışlar ve bağlam yöneticileri
from groupdocs.markdown import MarkdownConverter
with open("document.docx", "rb") as stream:
with MarkdownConverter(stream) as converter:
converter.convert("document.md")
Async API — birden çok belgeyi aynı anda dönüştürme
Dosya I/O asenkron olduğundan, asyncio.gather() tek bir işçiyle birçok belgeyi bloklamadan işleyebilir:
import asyncio
from groupdocs.markdown import MarkdownConverter
async def convert_many():
await asyncio.gather(
MarkdownConverter.to_file_async("a.docx", "a.md", None),
MarkdownConverter.to_file_async("b.pdf", "b.md", None),
MarkdownConverter.to_file_async("c.xlsx", "c.md", None),
)
asyncio.run(convert_many())
Bu, FastAPI gibi ASGI çerçeveleri için kütüphaneyi doğal bir uyumlu hâle getirir — tek bir işçi, çoklu eşzamanlı dönüşüm isteğini thread çatışması olmadan hizmet verebilir.
Hata yönetimi
Tüm dönüşüm metodları başarısızlıkta istisna fırlatır; yaygın senaryolar için özel istisna tipleri bulunur:
from groupdocs.markdown import (
MarkdownConverter,
DocumentProtectedException,
InvalidFormatException,
GroupDocsMarkdownException,
)
try:
MarkdownConverter.to_file("annual-report.docx", "annual-report.md")
except DocumentProtectedException:
print("Yanlış ya da eksik şifre.")
except InvalidFormatException:
print("Dosya bozuk ya da desteklenmiyor.")
except GroupDocsMarkdownException as ex:
print(f"Dönüşüm başarısız: {ex}")
RAG ve LLM boru hatları için inşa edildi
Markdown, gömme modelleri ve retrieval (geri getirme) boru hatları için tercih edilen giriş formatıdır — başlıkları, listeleri, tabloları ve vurgulamaları korur, aynı zamanda bölümlendirme ve tokenleştirme açısından kolaydır. Tipik bir RAG alımı şöyle görünür:
import re
from groupdocs.markdown import MarkdownConverter, ConvertOptions, SkipImagesStrategy, MarkdownFlavor
options = ConvertOptions()
options.image_export_strategy = SkipImagesStrategy() # RAG için sadece metin
options.flavor = MarkdownFlavor.COMMON_MARK
MarkdownConverter.to_file("business-plan.pdf", "business-plan.md", convert_options=options)
with open("business-plan.md", "r", encoding="utf-8") as f:
markdown = f.read()
# Üst‑seviye başlıklara göre böl, ardından her parçayı göm/indeksle
chunks = [c for c in re.split(r"\n#{1,2} ", markdown) if c.strip()]
Kütüphane tamamen yerinde çalıştığı için hassas belgeler ortamınızdan dışarı çıkmaz — düzenlenmiş sektörler, hukuk ekipleri ve dahili bilgi tabanları için ortak bir gereksinim.
Tasarım itibarıyla AI‑friendly
Çoğu Python SDK’sı AI kodlama asistanlarını bir sonradan ekleme olarak görür — geliştiricinin belgeye yönlendirmesi, örnek yapıştırması ya da deneme‑yanılma ile hata ayıklaması gerekir. GroupDocs.Markdown for Python via .NET bu yaklaşımı tersine çevirir: kütüphane, Claude Code, Cursor, GitHub Copilot ve Codex gibi ajanların manuel kurulum olmadan doğrudan benimseyebileceği şekilde tasarlanmıştır.
AGENTS.md tekerleğin içinde gelir
Bu, kurulu tekerleğin içinde doğrudan bir AGENTS.md dosyası barındıran ilk GroupDocs paketidir. Dosya, yeni ortaya çıkan AGENTS.md standardına uygun — insanlardan ziyade AI kodlama asistanları için yazılmış sade‑Markdown bir README.
pip install groupdocs-markdown-net çalıştırdığınızda dosya şu konuma yerleşir:
site-packages/groupdocs/markdown/AGENTS.md
Bir AI asistanı projenizi açtığında bu dosyayı okuyarak anında şunları öğrenir:
- Tam public API yüzeyi (sınıflar, metodlar, enumlar, istisnalar) ve bunların ilişkileri.
- En yaygın senaryolar için idiomatik kullanım kalıpları — statik vs örnek API, sync vs async, resim stratejileri, front matter, hata yönetimi.
- Ortak tuzaklar ve nasıl kaçınılacağı — örn. hangi
ConvertOptionsaşırı yüklemeleriNonekabul eder, şifre korumalı dosyalar nasıl işlenir, dönüşüm uyarıları nasıl yakalanır. - Platform‑spesifik sorunlar için sorun giderme (macOS’ta libSkiaSharp, Linux’ta ICU).
Pratikte bu, “groupdocs-markdown-net’i bu PDF klasörünü RAG boru hattım için Markdown’a dönüştürmek üzere kullan” dediğinizde ajanın ilk denemede çalışan kodu üretmesi demektir — hayali metod isimleri, yanlış argüman sırası ya da tahmini importlar yok.
Makine‑okunur dokümantasyon
AGENTS.md içinde bulunmayan bir şeyi arayan ajanlar için tam ürün dokümantasyonu da makine‑okunur biçimde yayımlanır:
- Tek‑dosya korpus — tüm dokümanlar birleştirilmiş Markdown dosyası olarak, bir ajanın bağlam penceresine doğrudan konulabilir:
https://docs.groupdocs.com/markdown/python-net/llms-full.txt - Sayfa‑sayfa Markdown — herhangi bir doküman URL’sine
.mdekleyerek ham kaynağı alabilirsiniz:
https://docs.groupdocs.com/markdown/python-net/quick-start-guide.md llms.txtindeksi — ajanları ihtiyaç duydukları sayfalara yönlendiren bir llms.txt-stili içerik tablosu:
https://docs.groupdocs.com/markdown/python-net/llms.txt
Canlı doküman sorgulamaları için MCP sunucusu
Model Context Protocol konuşan ajanlar için dokümanları bir MCP sunucusu olarak sunarız. Claude Code ya da Cursor yapılandırmanıza şunu ekleyin:
{
"mcpServers": {
"groupdocs-docs": {
"url": "https://docs.groupdocs.com/mcp"
}
}
}
Böylece ajan, eğitim verilerinin eski olma riskine dayanmak yerine ihtiyaca göre dokümantasyonu sorgulayabilir.
Markdown içinde, Markdown dışarı
Burada güzel bir simetri var: kütüphanenin çıktısı Markdown — LLM’lerin RAG için en iyi parse ettiği format — ve dokümantasyonu da Markdown, tek dosya olarak kolayca bağlam penceresine alınabilir. Bir ajan, kütüphaneyi kullanan kodu yazsın ya da belgelerinizi kütüphane aracılığıyla anlamasını sağlasın, ortak ortam Markdown’dır.
Dışa Aktarım Örneği
Yukarıdaki kod parçacıkları, kütüphane ile yazabileceğiniz en kısa faydalı programlara yakındır. Aynı fikri çalıştırılabilir bir proje olarak paketledik — kaynak belge, Python betiği, önceden oluşturulmuş çıktı, requirements.txt ve bir Dockerfile — böylece sıfırdan bir şey yazmadan uçtan uca deneyebilirsiniz.
Kaynak DOCX
Kaynak dosya business-plan.docx, başlıklar, tablolar, görseller ve üst veri içeren kısa, zengin biçimlendirilmiş bir iş planıdır.
Python betiği
from groupdocs.markdown import MarkdownConverter, ConvertOptions, MarkdownFlavor
def quick_example():
"""GitHub flavor ve YAML front matter ile bir Word belgesini Markdown'a dönüştür."""
# Tek satır — bir Markdown dizesi döndürür
md = MarkdownConverter.to_markdown("business-plan.docx")
# Seçeneklerle — bir dosyaya yazar
options = ConvertOptions()
options.flavor = MarkdownFlavor.GIT_HUB
options.include_front_matter = True
options.heading_level_offset = 1
MarkdownConverter.to_file("business-plan.docx", "quick-example.md", convert_options=options)
if __name__ == "__main__":
quick_example()
Çıktı Markdown
quick-example.md çıktısı, belge üst verisinden otomatik çıkarılan bir YAML front‑matter bloğu ile başlar, ardından GitHub Flavored tablolar ve kaydırılmış başlık hiyerarşisi (daha büyük bir belgeye gömülmeye hazır) içerir.
Çalıştırılabilir örnek uygulama
Her şey bir arada: sample-app.zip. Açın, ardından:
cd src
python -m venv .venv
# Windows: .venv\Scripts\activate
# Linux/macOS: source .venv/bin/activate
pip install -r requirements.txt
python quick_example.py
Veya Docker’da çalıştırın — dahil edilen Dockerfile, Linux’ta paketlenmiş .NET çalışma zamanının ihtiyaç duyduğu ICU bağımlılığını kurar:
cd src
docker build -t groupdocs-markdown-python-example .
docker run --rm -v "$(pwd)/output:/app/output" groupdocs-markdown-python-example
Özet
GroupDocs.Markdown for Python via .NET, tam belge‑to‑Markdown dönüşüm motorunu Python’a bağımsız bir tekerlek olarak getiriyor — dış runtime, bulut ya da sürpriz yok. Pythonik API, async desteği ve birinci sınıf AI araç entegrasyonu, RAG sistemleri, statik site üreticileri veya belge işleme boru hatları geliştiren Python ekipleri için pratik bir seçim yapar.
Daha fazla bilgi
- PyPI paketi: https://pypi.org/project/groupdocs-markdown-net/
- Ürün ana sayfası: https://products.groupdocs.com/markdown/python-net/
- Dokümantasyon: https://docs.groupdocs.com/markdown/python-net/
- Sürüm notları: https://releases.groupdocs.com/markdown/python-net/release-notes/
- GitHub’da kod örnekleri: https://github.com/groupdocs-markdown/GroupDocs.Markdown-for-Python-via-.NET
- Lisans bilgileri: https://about.groupdocs.com/legal/
- İlgili .NET sürüm gönderisi: GroupDocs.Markdown for .NET — First Public Release
Destek & geri bildirim
Sorularınız veya teknik yardım için lütfen Free Support Forum adresini kullanın — size yardımcı olmaktan memnuniyet duyarız.