dwani.ai - python library
Install the library
pip install --upgrade dwani
Languages supported
Indian
Assamese, Bengali, Gujarati, Hindi, Kannada, Malayalam, Marathi Odia, Punjabi, Tamil, Telugu
European
Setup the credentials
import dwani
import os
dwani . api_key = os . getenv ( "DWANI_API_KEY" )
dwani . api_base = os . getenv ( "DWANI_API_BASE_URL" )
Document - OCR
result = dwani . Documents . run_ocr_page ( file_path = "dwani-workshop.pdf" , page_number = 1 , model = "gemma3" )
print ( result )
{ 'page_co ntent ' : "Here's the plain text extracted from the image:\n\ndwani's Goals\n\nTo integrate and enhance the following models and services for Kannada:\n\n* **Automatic Speech Recognition (ASR):**" }
Document - Summary
result = dwani . Documents . summarize_all (
file_path = "dwani-workshop.pdf" , model = "gemma3" , tgt_lang = "english"
)
print ( "Document Query Response: gemma3- " , result [ "summary" ])
Text Query
resp = dwani . Chat . create ( prompt = "Hello!" , src_lang = "english" , tgt_lang = "kannada" , model = "gemma3" )
print ( resp )
{ 'respo nse ' : 'ನಮಸ್ತೆ! ಭಾರತ ಮತ್ತು ಕರ್ನಾಟಕವನ್ನು ಗಮನದಲ್ಲಿಟ್ಟುಕೊಂಡು ಇಂದು ನಿಮ್ಮ ಪ್ರಶ್ನೆಗಳಿಗೆ ನಾನು ನಿಮಗೆ ಹೇಗೆ ಸಹಾಯ ಮಾಡಲಿ?' }
Vision Query
gemma3 (default)
result = dwani . Vision . caption (
file_path = "image.png" ,
query = "Describe this logo" ,
src_lang = "english" ,
tgt_lang = "kannada" ,
model = "gemma3"
)
print ( result )
{ 'a ns wer' : 'ಒಂದು ವಾಕ್ಯದಲ್ಲಿ ಚಿತ್ರದ ಸಾರಾಂಶವನ್ನು ಇಲ್ಲಿ ನೀಡಲಾಗಿದೆಃ ಪ್ರಕಟಣೆಯ ಅವಲೋಕನವು ಪ್ರಸ್ತುತ ಅರವತ್ತನಾಲ್ಕು ದೇಶಗಳು/ಪ್ರದೇಶಗಳನ್ನು ಸೇರಿಸಲಾಗಿದೆ ಮತ್ತು ಇನ್ನೂ ಹದಿನಾರು ಪ್ರದೇಶಗಳನ್ನು ಸೇರಿಸಬೇಕಾಗಿದೆ. ಒದಗಿಸಲಾದ ಚಿತ್ರದಲ್ಲಿ ಲಾಂಛನವು ಕಾಣಿಸುವುದಿಲ್ಲ.' }
Speech to Text - Automatic Speech Recognition (ASR)
result = dwani . ASR . transcribe ( file_path = "kannada_sample.wav" , language = "kannada" )
print ( result )
{ ' te x t ' : 'ಕರ್ನಾಟಕ ದ ರಾಜಧಾನಿ ಯಾವುದು' }
Translate
resp = dwani . Translate . run_translate ( sentences = "hi, i am gaganyatri" , src_lang = "english" , tgt_lang = "kannada" )
print ( resp )
{ ' translat io ns ' : [ 'ಹಾಯ್ , ನಾನು ಗಗನಯಾತ್ರಿ' ]}
Text to Speech - Speech Synthesis
response = dwani . Audio . speech ( input = "ಕರ್ನಾಟಕದ ರಾಜಧಾನಿ ಯಾವುದು" , response_format = "wav" , language = "kannada" )
with open ( "output.wav" , "wb" ) as f :
f . write ( response )
result = dwani . Documents . run_extract ( file_path = "dwani-workshop.pdf" , page_number = 1 , src_lang = "english" , tgt_lang = "kannada" )
print ( result )
{ 'pages' : [{ 'processed_page' : 1 , 'page_co ntent ' : ' a plai n te x t represe ntat io n o f t he docume nt ' , ' translate d_co ntent ' : 'ಡಾಕ್ಯುಮೆಂಟ್ನ ಸರಳ ಪಠ್ಯ ಪ್ರಾತಿನಿಧ್ಯವನ್ನು ಇಲ್ಲಿ ನೀಡಲಾಗಿದೆ , ಅದನ್ನು ಸ್ವಾಭಾವಿಕವಾಗಿ ಓದುವಂತೆಃ' }]}