अपडेट पर वापस जाएँ
New releaseAug 13, 2026

oneiromancer v0.9.1

रिवर्स इंजीनियरिंग सहायक जो स्यूडोकोड विश्लेषण में सहायता करने के लिए स्थानीय रूप से चलने वाले LLM का उपयोग करता है।

साझा करें

oneiromancer

build

"सॉफ्टवेयर विकास में दोषों का एक बड़ा हिस्सा प्रोग्रामरों द्वारा उन सभी संभावित अवस्थाओं को पूरी तरह से न समझ पाने के कारण होता है जिनमें उनका कोड निष्पादित हो सकता है।" -- John Carmack

"क्या यह Doom चला सकता है?" -- https://canitrundoom.org/

Oneiromancer एक रिवर्स इंजीनियरिंग सहायक है जो Hex-Rays स्यूडोकोड के लिए फाइन-ट्यून किए गए स्थानीय रूप से चलने वाले LLM का उपयोग करके कोड विश्लेषण में सहायता करता है। यह किसी फ़ंक्शन या छोटे कोड स्निपेट का विश्लेषण कर सकता है, विश्लेषण के परिणामों के आधार पर कोड क्या करता है इसका उच्च-स्तरीय विवरण, फ़ंक्शन के लिए अनुशंसित नाम, और वेरिएबल नामकरण सुझाव लौटाता है।

विशेषताएँ

  • फाइन-ट्यून किए गए LLM aidapal के लिए क्रॉस-प्लेटफ़ॉर्म समर्थन, जो mistral-7b-instruct पर आधारित है।
  • स्यूडोकोड निकालने वाले haruspex और लोकप्रिय IDE के साथ आसान एकीकरण।
  • कोड विवरण, अनुशंसित फ़ंक्शन नाम, और वेरिएबल नामकरण सुझाव टर्मिनल पर मुद्रित होते हैं।
  • प्रत्येक विश्लेषित फ़ंक्शन का बेहतर स्यूडोकोड आसान निरीक्षण के लिए एक अलग फ़ाइल में सहेजा जाता है।
  • बाहरी crates स्यूडोकोड का विश्लेषण करने के लिए analyze_code या analyze_file को कॉल कर सकते हैं और फिर विश्लेषण परिणामों को संसाधित कर सकते हैं।

लेख

यह भी देखें

स्थापना

नवीनतम रिलीज़ प्राप्त करने का सबसे आसान तरीका crates.io के माध्यम से है:

cargo install oneiromancer

लाइब्रेरी के रूप में स्थापित करने के लिए, अपनी प्रोजेक्ट निर्देशिका में निम्नलिखित कमांड चलाएँ:

cargo add oneiromancer

संकलन

वैकल्पिक रूप से, आप स्रोत से बना सकते हैं:

git clone https://github.com/0xdea/oneiromancer
cd oneiromancer
cargo build --release

कॉन्फ़िगरेशन

  1. Ollama डाउनलोड करें और इंस्टॉल करें।
  2. फाइन-ट्यून किए गए वेट्स और Ollama मॉडलफ़ाइल को Hugging Face से डाउनलोड करें:
    wget https://huggingface.co/AverageBusinessUser/aidapal/resolve/main/aidapal-8k.Q4_K_M.gguf
    wget https://huggingface.co/AverageBusinessUser/aidapal/resolve/main/aidapal.modelfile
    
  3. जिस निर्देशिका में आपने फ़ाइलें डाउनलोड की हैं, उसके भीतर निम्नलिखित कमांड चलाकर Ollama को कॉन्फ़िगर करें:
    ollama create aidapal -f aidapal.modelfile
    ollama list
    

उपयोग

  1. oneiromancer को इस प्रकार चलाएँ:
    export OLLAMA_BASEURL=custom_baseurl # if not set, the default will be used
    export OLLAMA_MODEL=custom_model # if not set, the default will be used
    oneiromancer <target_file>.c
    
  2. बेहतर स्यूडोकोड को <target_file>.out.c में खोजें:
    vim <target_file>.out.c
    code <target_file>.out.c
    

[!TIP] सर्वोत्तम परिणामों के लिए, LLM द्वारा विश्लेषण के लिए एक समय में एक फ़ंक्शन सबमिट करें।

संगतता

निम्न पर Ollama 0.32.9 के साथ परीक्षण किया गया:

  • Apple macOS Tahoe 26.5.2
  • Ubuntu Linux 24.04.2 LTS
  • Microsoft Windows 11 23H2

श्रेय

  • Atredis Partners में Chris Bellows (@AverageBusinessUser) को उनके फाइन-ट्यून किए गए LLM aidapal के लिए <3

परिवर्तन-लॉग

TODO

  • संस्करणीकरण और/या आउटपुट निर्देशिका के साथ आउटपुट फ़ाइल प्रबंधन में सुधार करें।
  • IDAPython aidapal IDA Pro प्लगइन की अन्य विशेषताओं को लागू करें (उदा., कॉन्टेक्स्ट)।
  • haruspex और idalib के साथ एकीकृत करें।
  • एक "minority report" प्रोटोकॉल लागू करें (अर्थात, तीन क्वेरी करें और सर्वोत्तम प्रतिक्रियाओं का चयन करें)।
  • संभावित कोड भ्रष्टाचार को रोकने के लिए वेरिएबल नामकरण के रिफैक्टर पर विचार करें।
  • aidapal LLM के अन्य उपयोग मामलों की जाँच करें और कस्टम LLM को प्लग इन करने के लिए एक मॉड्यूलर आर्किटेक्चर लागू करें।

श्रेणियाँ