From d4a6f6d328b11bc2789b97a1245b140970b13b0a Mon Sep 17 00:00:00 2001 From: miteruzo Date: Tue, 3 Sep 2024 00:42:41 +0900 Subject: [PATCH] =?UTF-8?q?=E7=94=BB=E5=83=8F=E3=81=AB=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ai | 2 +- main.py | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/ai b/ai index dfa09e1..f0570e0 160000 --- a/ai +++ b/ai @@ -1 +1 @@ -Subproject commit dfa09e1e66550e731b740d85e06d88a0caa33eda +Subproject commit f0570e0caf1db858e663a9362b9cbf111016935a diff --git a/main.py b/main.py index 4c1e98b..66e7cfd 100644 --- a/main.py +++ b/main.py @@ -41,7 +41,8 @@ def get_thread_contents ( 'handle': response.post.author.handle, 'name': response.post.author.display_name, 'datetime': response.post.record.created_at, - 'text': response.post.record.text }] + 'text': response.post.record.text, + 'embed': response.post.record.embed }] response = response.parent return records @@ -60,7 +61,14 @@ def main () -> None: for uri in check_notifications (client): records = get_thread_contents (client, uri, 20) if len (records) > 0: - answer = Talk.main (records[0]['text'], + answer = Talk.main ((records[0]['text'] + if (records[0]['embed'] is None + or not hasattr (records[0]['embed'], + 'images')) + else [ + { 'type': 'text', 'text': records[0]['text'] }, + { 'type': 'image_url', 'image_url': { + 'url': f"https://cdn.bsky.app/img/feed_fullsize/plain/{ records[0]['did'] }/{ records[0]['embed'].images[0].image.ref.link }" } }]), records[0]['name'], [*map (lambda record: { 'role': ('assistant'