1212# See the License for the specific language governing permissions and
1313# limitations under the License.
1414
15+ import base64
16+ import json
17+ import traceback
1518from typing import Dict
19+
1620from google .adk .tools import ToolContext
21+ from opentelemetry import trace
22+ from opentelemetry .trace import Span
1723from volcenginesdkarkruntime import Ark
24+
1825from veadk .config import getenv , settings
1926from veadk .consts import (
2027 DEFAULT_IMAGE_EDIT_MODEL_API_BASE ,
2128 DEFAULT_IMAGE_EDIT_MODEL_NAME ,
2229)
23- import base64
24- from opentelemetry import trace
25- import traceback
26- import json
27- from veadk .version import VERSION
28- from opentelemetry .trace import Span
2930from veadk .utils .logger import get_logger
31+ from veadk .version import VERSION
3032
3133logger = get_logger (__name__ )
3234
3335client = Ark (
3436 api_key = getenv (
35- "MODEL_EDIT_API_KEY" , getenv ("MODEL_AGENT_API_KEY" , settings .model .api_key )
37+ "MODEL_EDIT_API_KEY" ,
38+ getenv ("MODEL_AGENT_API_KEY" , settings .model .api_key ),
3639 ),
3740 base_url = getenv ("MODEL_EDIT_API_BASE" , DEFAULT_IMAGE_EDIT_MODEL_API_BASE ),
3841)
@@ -135,6 +138,14 @@ async def image_edit(
135138 response = client .images .generate (
136139 model = getenv ("MODEL_EDIT_NAME" , DEFAULT_IMAGE_EDIT_MODEL_NAME ),
137140 ** inputs ,
141+ extra_headers = {
142+ "veadk-source" : "veadk" ,
143+ "veadk-version" : VERSION ,
144+ "User-Agent" : f"VeADK/{ VERSION } " ,
145+ "X-Client-Request-Id" : getenv (
146+ "MODEL_AGENT_CLIENT_REQ_ID" , f"veadk/{ VERSION } "
147+ ),
148+ },
138149 )
139150 output_part = None
140151 if response .data and len (response .data ) > 0 :
@@ -154,7 +165,8 @@ async def image_edit(
154165 image_bytes = base64 .b64decode (image )
155166
156167 tos_url = _upload_image_to_tos (
157- image_bytes = image_bytes , object_key = f"{ image_name } .png"
168+ image_bytes = image_bytes ,
169+ object_key = f"{ image_name } .png" ,
158170 )
159171 if tos_url :
160172 tool_context .state [f"{ image_name } _url" ] = tos_url
@@ -277,10 +289,11 @@ def add_span_attributes(
277289
278290def _upload_image_to_tos (image_bytes : bytes , object_key : str ) -> None :
279291 try :
280- from veadk .integrations .ve_tos .ve_tos import VeTOS
281292 import os
282293 from datetime import datetime
283294
295+ from veadk .integrations .ve_tos .ve_tos import VeTOS
296+
284297 timestamp : str = datetime .now ().strftime ("%Y%m%d%H%M%S%f" )[:- 3 ]
285298 object_key = f"{ timestamp } -{ object_key } "
286299 bucket_name = os .getenv ("DATABASE_TOS_BUCKET" )
0 commit comments