{"id":19413451,"url":"https://github.com/wisehackermonkey/searchfusion","last_synced_at":"2026-04-11T16:41:13.970Z","repository":{"id":249720053,"uuid":"832339029","full_name":"wisehackermonkey/searchfusion","owner":"wisehackermonkey","description":"makes it super easy to find stuff on your computer","archived":false,"fork":false,"pushed_at":"2024-07-26T05:39:42.000Z","size":5492,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-25T02:45:29.217Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wisehackermonkey.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-22T20:24:42.000Z","updated_at":"2024-07-26T05:39:45.000Z","dependencies_parsed_at":"2024-07-26T06:47:39.599Z","dependency_job_id":null,"html_url":"https://github.com/wisehackermonkey/searchfusion","commit_stats":null,"previous_names":["wisehackermonkey/searchfusion"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wisehackermonkey/searchfusion","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wisehackermonkey%2Fsearchfusion","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wisehackermonkey%2Fsearchfusion/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wisehackermonkey%2Fsearchfusion/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wisehackermonkey%2Fsearchfusion/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wisehackermonkey","download_url":"https://codeload.github.com/wisehackermonkey/searchfusion/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wisehackermonkey%2Fsearchfusion/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31687881,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-11T13:07:20.380Z","status":"ssl_error","status_checked_at":"2026-04-11T13:06:47.903Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T12:33:06.480Z","updated_at":"2026-04-11T16:41:13.949Z","avatar_url":"https://github.com/wisehackermonkey.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Search fusion \n\n### makes it super easy to find stuff on your computer\n## local gui app that allows you to search for images and text files by tags autogenrated by ml classifiers\n\n\n# install\n# install conda\n```bash\ncd ~\nmkdir -p ~/miniconda3\nwget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh\nbash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3\nrm -rf ~/miniconda3/miniconda.sh\n~/miniconda3/bin/conda init bash\n```\n# close and open terminal\n```bash\nconda --version\nconda create -n searchfusion python=3.8\nconda activate searchfusion\npip install 'transformers[torch]' pillow\n```\n\n\n# examples of just using the classifer script\n```bash\npython blip.py --text \"A \" --input_file ./images/muffin.png --verbose \u003e classified_images.txt\n ```\n\n\n### Explanation\n1. **Argument Parsing**: Added `--verbose` flag to enable verbose mode.\n2. **Logging Configuration**: Configured logging to suppress all messages except critical ones by default. If `--verbose` is enabled, it shows warning messages.\n3. **Logging Messages**: Added `logging.warning` calls at key points to provide messages when verbose mode is enabled.\n\n### How to Run\n1. **Using default values and suppressing messages**:\n   ```bash\n   python script.py \u003c image_file.png\n   ```\n\n2. **Using verbose mode**:\n   ```bash\n   python script.py --verbose \u003c image_file.png\n   ```\n\n3. **Providing a text prompt, input file, and verbose mode**:\n   ```bash\n   python script.py --text \"A cute \" --input_file ./images/muffin.png --verbose\n   ```\n\nThis setup will suppress all messages except for the `print` output unless the `--verbose` flag is used.\n\n\n## glob a bunch of files\ncat ./images/crypto.png | python blip.py --text \"A \" \u003e\u003e classified_images.txt\ncat ./images/crypto.png | python blip.py --text \"photo of \" --verbose \u003e\u003e classified_images.txt\nls ./images/*.* | parallel -j 2 'cat {} | python blip.py --text \"a \" --verbose \u003e\u003e classified_images.txt'\n\n\n\n# todo add a hash value as a key\n# add squel lite? idk\n# interface?\n\n\n# rip grep the file with fuzzy search\n\n# search bar\n\n\n\n\n# external resources\nhttps://huggingface.co/Salesforce/blip-image-captioning-large\n\n# target output\n![alt text](image.png)\n\n\n```bash\nsudo apt-get install ripgrep\npip install ripgrepy\n```\n\n### prompt\n```python\nwrite a python script \n\ncreate a database using sqlite \nwitht the following columns \n\nimage_descriptions \n    path TEXT,\n    description TEXT,\n    hash TEXT\npath (text) (path to file) (has the abspath of the image file)\ndescription(text)\nhash (text) (md5 hash of the file) make entry unique on this key\n\ncreate the database call it image_descriptions\n\nup_sert the file  \"/home/o/github/searchfusion/images/tor.png\" into the database\ndescription = \"a photo of a shady guy holding a onion\"\ndb name \"demo.db\"\ncode only\n```\n\n\n# prompt\n```python\ncreate a python script \nthat searches a sqlite database.\n   db table name: image_descriptions\n    path TEXT PRIMARY KEY,\n    description TEXT,\n    hash TEXT\n\nkey word search on description\n\ncreate a commandline search input display the results \nfor each result\n\"\u003cpath make fixed with on largest file name, strip the path to just the file name like '.../tor.png'\u003e, \u003cDescription 'where a substring is found change console characters to red use '\\033[91m'' \u003e\n\nadd command line arguments \n--db 'demo.db'\n--query -q 'onion'\nscript name is search.py\ncode only, example use\n```\n\n\n# prompt\n```python\ncreate a python script \nfile name: jobs.py\nsearch all sub directories (recusivly) for images using find\ninput is a list of directories to search within example ['./images', './secret']\n\nimages = 'png, jpg, gif, webp, bmp'\n\n\ncreate a priority queue store in a sqlite database called jobs.db table name jobs_queue\n        path TEXT, (abspath)\n        time (time created)\n        hash TEXT UNIQUE \n        completed BOOL\ncreate a sqlite database. db file name images.db\n   db table name: image_descriptions\n    path TEXT,\n    description TEXT,\n    hash TEXT UNIQUE PRIMARY KEY\nNUMWORKERS = 2\nif there is jobs in the queue the pull off NUM_WORKERS\nand run the shell command  \nparallel NUMORKERS 'python blip.py --text \"photo of \" --verbose  --input_file {path} '\nif NUMWORKERS is more than 1 then run multiple  python blip.py --text \"photo of \" --verbose  --input_file {path} '\n\nstore the results of each job into the image_descriptions table\n\ncode only, example use\n```\n\n# prompt\n\n```python\nconvert this python script to accept list of image files from ls ./path/to/dir/*.png | vit.py \nvit.py (name of the script)\nexample path = ./images/*.png \n\nintalize  processor and model at the top of the file \n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwisehackermonkey%2Fsearchfusion","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwisehackermonkey%2Fsearchfusion","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwisehackermonkey%2Fsearchfusion/lists"}