Add files via upload
This commit is contained in:
parent
fb0a38f512
commit
203b29b855
111
9. Image Processing.ipynb
Normal file
111
9. Image Processing.ipynb
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
{
|
||||||
|
"cells": [
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 1,
|
||||||
|
"id": "f65de83c-0d36-4e69-93c2-a2c5fb0f6811",
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"#Disable Proxy\n",
|
||||||
|
"\n",
|
||||||
|
"import os\n",
|
||||||
|
"\n",
|
||||||
|
"def clear_proxy_settings():\n",
|
||||||
|
" for var in [\"HTTP_PROXY\", \"HTTPS_PROXY\", \"ALL_PROXY\", \"http_proxy\", \"https_proxy\", \"all_proxy\"]:\n",
|
||||||
|
" if var in os.environ:\n",
|
||||||
|
" del os.environ[var]\n",
|
||||||
|
"\n",
|
||||||
|
"clear_proxy_settings()"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 3,
|
||||||
|
"id": "c4a3951c-fcd7-4a05-a141-f6e09aacc111",
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"بر اساس متن موجود، سید محمود خلیفه سلطانی مدیرعامل محترم شرکت تکابو صنعت نامی (اینجن پارک) می باشد. \n",
|
||||||
|
"\n",
|
||||||
|
"\n",
|
||||||
|
" \n",
|
||||||
|
"\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"import requests\n",
|
||||||
|
"import json\n",
|
||||||
|
"from ollama import chat \n",
|
||||||
|
"\n",
|
||||||
|
"def image_to_gemma_response(image_path, query):\n",
|
||||||
|
" # Extract text from image using Landing AI API\n",
|
||||||
|
" url = \"https://api.va.landing.ai/v1/tools/agentic-document-analysis\"\n",
|
||||||
|
" files = {\"image\": open(image_path, \"rb\")}\n",
|
||||||
|
" headers = {\"Authorization\": \"Basic YWdmbjl0d200emV3cjVicHFzeXpuOmFBWGJCTGZRUFBsMzZVVWF3aXFVYVduY0hGVUdIQmhq\"}\n",
|
||||||
|
" response = requests.post(url, files=files, headers=headers)\n",
|
||||||
|
" data = response.json()\n",
|
||||||
|
" \n",
|
||||||
|
" # Get markdown text from response\n",
|
||||||
|
" extracted_text = \"\"\n",
|
||||||
|
" if \"data\" in data and \"markdown\" in data[\"data\"]:\n",
|
||||||
|
" extracted_text = data[\"data\"][\"markdown\"]\n",
|
||||||
|
" \n",
|
||||||
|
" # Create prompt for Gemma\n",
|
||||||
|
" prompt = f\"\"\"\n",
|
||||||
|
" # متن استخراج شده از تصویر:\n",
|
||||||
|
" {extracted_text}\n",
|
||||||
|
" \n",
|
||||||
|
" # سوال:\n",
|
||||||
|
" {query}\n",
|
||||||
|
" \n",
|
||||||
|
" لطفاً با استفاده از اطلاعات بالا، به سوال پاسخ دهید. پاسخ را به فارسی بنویسید.\n",
|
||||||
|
" \"\"\"\n",
|
||||||
|
"\n",
|
||||||
|
" # Get response from Gemma\n",
|
||||||
|
" messages = [{\"role\": \"user\", \"content\": prompt}]\n",
|
||||||
|
" response = chat(model=\"gemma2:9b\", messages=messages)\n",
|
||||||
|
" return response['message']['content']\n",
|
||||||
|
"\n",
|
||||||
|
"# Usage\n",
|
||||||
|
"image_path = \"/home/masih/Desktop/Temp/m.jpg\"\n",
|
||||||
|
"query = \"سید محمود خلیفه سلطانی کیست؟\"\n",
|
||||||
|
"result = image_to_gemma_response(image_path, query)\n",
|
||||||
|
"print(result)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": null,
|
||||||
|
"id": "b8920fdd-80d2-4299-ab66-2809bee95f99",
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": []
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"metadata": {
|
||||||
|
"kernelspec": {
|
||||||
|
"display_name": "Python [conda env:base] *",
|
||||||
|
"language": "python",
|
||||||
|
"name": "conda-base-py"
|
||||||
|
},
|
||||||
|
"language_info": {
|
||||||
|
"codemirror_mode": {
|
||||||
|
"name": "ipython",
|
||||||
|
"version": 3
|
||||||
|
},
|
||||||
|
"file_extension": ".py",
|
||||||
|
"mimetype": "text/x-python",
|
||||||
|
"name": "python",
|
||||||
|
"nbconvert_exporter": "python",
|
||||||
|
"pygments_lexer": "ipython3",
|
||||||
|
"version": "3.12.3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nbformat": 4,
|
||||||
|
"nbformat_minor": 5
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user