Да, можно создать сжатую топи c с помощью kafka- python.
Конструктор NewTopic
принимает аргумент topic_configs
для указания топи c конфигурации.
Например:
from kafka import KafkaAdminClient
from kafka.admin import NewTopic
admin = KafkaAdminClient(bootstrap_servers=['localhost:9092'])
topic = NewTopic('bar', 1, 1, topic_configs={'cleanup.policy': 'compact'})
response = admin.create_topics([topic])
print(response)