
Eco²
Backend · Cloud infrastructure
Οδηγίες ανακύκλωσης από μία φωτογραφία και μια συζήτηση.
Ένας ολοκληρωμένος βοηθός AI που κατανοεί πώς λειτουργεί η ανακύκλωση στην Κορέα.
Eco² vocabulary
- edge
- auth offload
- domain api
- task queue
- scan pipeline
- chat agent
- event bus
- cluster
- gitops
- autoscaling
- observability
- load test
- evaluation
Edge: ROUTE 53 · ALB · HTTPS 443 · internet-facing · external-dns · istio-ingressgateway · NodePort · eco2-gateway · VirtualService · x-canary · AuthorizationPolicy · ENVOY SIDECAR · kiali-serverAuth Offload: AuthorizationPolicy · action: CUSTOM · notPaths · envoyExtAuthzGrpc · failOpen: false · CheckRequest · x-user-id · BlacklistCache · BootstrapFromRedis · outbox:blacklist · blacklist.events · UsersServiceDomain API: VirtualService · x-user-id · /api/v1/scan · X-Idempotency-Key · job_id · stream_url · 202 ACCEPTED · Retry-After · ScanTask · UsersService · ImageService · ENVOY SIDECARTask Queue: outbox:blacklist · blacklist.events · RabbitmqCluster · scan.direct · reward.events · dlx · x-dead-letter-exchange · chat.process · AioPikaBroker · task_acks_late · apply_async · gevent · scan.vision · scan.rule · scan.answer · scan.reward · CELERY CHAIN · QueueLength · inspect ping · QUEUE SATURATIONScan Pipeline: ScanTask · scan.direct · reward.events · apply_async · gevent · scan.vision · scan.rule · scan.answer · scan.reward · CELERY CHAIN · RewardStep · item_class_list.yaml · situation_tags.yaml · LITE RAG · JsonRegulationRetriever · PipelineStage · waste_rag · XADD · domain: worker-ai · pipeline_duration · vision_stage_durationChat Agent: ImageService · chat.process · AioPikaBroker · create_chat_graph · route_by_intent · MULTI-INTENT FANOUT · waste_rag · recyclable_price · collection_point · image_generation · aggregator · thread_id · SyncableRedisSaver · AsyncPostgresSaver · LANGSMITH_TRACING · regenerateEvent Bus: job_id · stream_url · PipelineStage · XADD · scan:events:{shard} · XREADGROUP · XACK · XAUTOCLAIM · PendingReclaimer · STATE KV · scan:state:{job_id} · sse:events:{shard} · SSEBroadcastManager · Last-Event-ID · scan_sse_connections_active · ServiceMonitor · traceparentCluster: NodePort · kubeadm init · kubeadm join · vxlanMode · BGPConfiguration · module "vpc" · worker_ai · nodeSelector · domain: worker-ai · NoSchedule · 24-NODE CLUSTERGitOps: external-dns · x-canary · dev-root · ApplicationSet · sync-wave · selfHeal · ignoreDifferences · argocd-image-updater · update-strategy: digest · write-back-method · targetRevision · ci-services.ymlAutoscaling: ignoreDifferences · ScaledObject · QueueLength · cooldownPeriod · pollingInterval · fallback · maxReplicaCount · stabilizationWindowSeconds · HorizontalPodAutoscaler · scan_sse_connections_active · prometheus-adapterObservability: 24-NODE CLUSTER · prometheus-adapter · FLUENT BIT · Elasticsearch · Kibana · kube-prometheus-stack · AlertmanagerConfig · ServiceMonitor · JAEGER · OPENTELEMETRY · traceparent · kiali-server · LANGSMITH_TRACINGLoad Test: k6 · ramping-vus · thresholds · pipeline_duration · vision_stage_duration · poll_timeout · inspect ping · WORKER RESTART · POLLING TIMEOUT · QUEUE SATURATIONEvaluation: EvalConfig · eval_mode · eval_sample_rate · eval_cost_budget_daily_usd · EvalResult · EvalGrade · code_grader · llm_grader · CUSUM · regenerate · OpenAIBARSEvaluator
Πώς συνδέονται πραγματικά οι 24 κόμβοι, μία ροή τη φορά.
Αυτοδιαχειριζόμενο Kubernetes στημένο με kubeadm. Ο χάρτης τοποθετεί τους 24 φυσικούς κόμβους και τους φόρτους εργασίας τους μέσα στα πέντε επίπεδα του README και τους ενώνει με τις πραγματικές τους συνδέσεις. Η επιλογή μιας ροής επισημαίνει μόνο τη διαδρομή της, με αριθμημένα βήματα.
Αναγνωρίζει απορρίμματα από μια φωτογραφία και εξηγεί πώς απορρίπτονται, και στη συζήτηση καλεί εργαλεία για τοποθεσίες, καιρό, τιμές ανακύκλωσης και αναζήτηση στον ιστό, ενώ παράγει και εικόνες. Σε αυτό το ομαδικό έργο ξεκίνησα από τα θεμέλια της συστοιχίας και της ανάπτυξης και διεύρυνα το πεδίο μου στο backend τομέα, την ασύγχρονη επεξεργασία, τον πράκτορα συνομιλίας και την επαλήθευση.
Από την ανάπτυξη στον διαγωνισμό ως την ενίσχυση του backend και της λειτουργίας
Η υπηρεσία ολοκλήρωσε τη λειτουργία της. Ένα βίντεο επίδειξης και η τεχνική αναφορά τη δείχνουν εν λειτουργία.
Αίτημα Scan → ζωντανή παράδοση
Ένα αίτημα ανάλυσης φωτογραφίας γίνεται εργασία σε ουρά, και τα συμβάντα προόδου του επιστρέφουν στο ίδιο πρόγραμμα περιήγησης.
Πρόγραμμα περιήγησηςαναζήτηση DNS: Αναζήτηση DNSRoute 53
Από τις εγγραφές Route 53 επιλύεται μόνο το όνομα. Τα αιτήματα δεν περνούν από το DNS.
Πρόγραμμα περιήγησηςροή δεδομένων: HTTPS 443AWS ALB
Το TLS τερματίζεται στο ALB.
AWS ALBροή δεδομένων: HTTP · NodePortIstio ingress Envoy
k8s-ingress-gatewayΠαραδίδεται στο Istio ingress Envoy μέσω του NodePort του στόχου EC2 instance.
Istio ingress Envoy
k8s-ingress-gatewayροή δεδομένων: VirtualServiceScan APIk8s-api-scanΔρομολογείται στο Scan API, που βάζει την εργασία σε ουρά και επιστρέφει αμέσως ένα job_id. Το ερώτημα αποτελέσματος απαντά 202 μέχρι να ολοκληρωθεί η εργασία.
Scan API
k8s-api-scanροή δεδομένων: Εργασία CeleryRabbitMQk8s-rabbitmqΗ εργασία Scan μπαίνει στο RabbitMQ.
RabbitMQ
k8s-rabbitmqροή δεδομένων: consumescan-workerk8s-worker-ai · k8s-worker-ai-2Ο scan-worker (Celery · gevent) στη δεξαμενή AI την παραλαμβάνει και εκτελεί Vision → Rule → Answer → Reward. Τα τέσσερα στάδια είναι αλυσιδωτά tasks του Celery, όχι κόμβοι.
Δεξαμενή AI
k8s-worker-ai · k8s-worker-ai-2ροή δεδομένων: HTTPSLLM APIΟι workers scan και chat καλούν τα API της OpenAI και της Google.
scan-worker
k8s-worker-ai · k8s-worker-ai-2ροή δεδομένων: XADD scan:eventsStreamsk8s-redis-streamsΤα συμβάντα προόδου γράφονται σε ένα από τα τέσσερα shards των Streams.
Streams
k8s-redis-streamsροή δεδομένων: XREADGROUPEvent Routerk8s-event-routerΟ Event Router τα διαβάζει ως consumer group και κάνει XACK μετά την επεξεργασία. Τα pending και reclaim διατηρούν την παράδοση at-least-once.
Event Router
k8s-event-routerροή δεδομένων: SETEX stateState KVk8s-redis-streamsΓράφει την τελευταία κατάσταση και μια σήμανση διπλής επεξεργασίας στο State KV στον ίδιο κόμβο Redis.
Event Router
k8s-event-routerροή δεδομένων: PUBLISHPub/Subk8s-redis-pubsubΠαραδίδονται σε πραγματικό χρόνο στο κανάλι της εργασίας στο shard Pub/Sub.
Pub/Sub
k8s-redis-pubsubροή δεδομένων: SUBSCRIBESSE Gatewayk8s-sse-gatewayΤο SSE Gateway εγγράφεται μέσω ενός κοινόχρηστου listener ανά διεργασία και διανέμει σε κάθε συνδεδεμένο πρόγραμμα περιήγησης.
SSE Gateway
k8s-sse-gatewayροή δεδομένων: Ροή SSEΠρόγραμμα περιήγησηςΣύνδεση που ανοίγει μέσω της ίδιας διαδρομής ALB και ingress. Η παράδοση είναι at-least-once, και τα διπλότυπα χειρίζονται ταυτοδύναμα.
State KV
k8s-redis-streamsροή δεδομένων: Ανάκτηση κατά την επανασύνδεσηSSE Gatewayk8s-sse-gatewayΣε επανασύνδεση με Last-Event-ID, το State KV και τα διατηρημένα Streams συμπληρώνουν τα συμβάντα που χάθηκαν.
Chat · tokens και αποθήκευση
Τα tokens του Chat ακολουθούν την ίδια διαδρομή συμβάντων με το Scan, ενώ τα checkpoints και τα μηνύματα αποθηκεύονται από δύο διαφορετικούς φόρτους εργασίας.
Πρόγραμμα περιήγησηςροή δεδομένων: HTTPS 443AWS ALB
Το TLS τερματίζεται στο ALB.
AWS ALBροή δεδομένων: HTTP · NodePortIstio ingress Envoy
k8s-ingress-gatewayΠαραδίδεται στο Istio ingress Envoy μέσω του NodePort του στόχου EC2 instance.
Istio ingress Envoy
k8s-ingress-gatewayροή δεδομένων: VirtualServiceChat APIk8s-api-chatΔρομολογείται στο Chat API.
Chat API
k8s-api-chatροή δεδομένων: Εργασία TaskiqRabbitMQk8s-rabbitmqΗ εργασία Chat μπαίνει στο RabbitMQ.
RabbitMQ
k8s-rabbitmqροή δεδομένων: consumechat-workerk8s-worker-ai · k8s-worker-ai-2Ο chat-worker (Taskiq · asyncio) ταξινομεί την πρόθεση με το LangGraph, έπειτα εκτελεί το vision αν χρειάζεται, τα επιλεγμένα εργαλεία, τον aggregator και μια σύνοψη αν χρειάζεται, και απαντά. Κάθε αίτημα εκτελεί μόνο τους κλάδους που χρειάζεται.
Δεξαμενή AI
k8s-worker-ai · k8s-worker-ai-2ροή δεδομένων: HTTPSLLM APIΟι workers scan και chat καλούν τα API της OpenAI και της Google.
chat-worker
k8s-worker-ai · k8s-worker-ai-2ροή δεδομένων: XADD chat:eventsStreamsk8s-redis-streamsΤα tokens και τα συμβάντα σταδίων γράφονται σε τέσσερα shards των Streams. Από εκεί η διαδρομή παράδοσης είναι ίδια με του Scan.
Streams
k8s-redis-streamsροή δεδομένων: XREADGROUPEvent Routerk8s-event-routerΟ Event Router τα διαβάζει ως consumer group και κάνει XACK μετά την επεξεργασία. Τα pending και reclaim διατηρούν την παράδοση at-least-once.
Event Router
k8s-event-routerροή δεδομένων: PUBLISHPub/Subk8s-redis-pubsubΠαραδίδονται σε πραγματικό χρόνο στο κανάλι της εργασίας στο shard Pub/Sub.
Pub/Sub
k8s-redis-pubsubροή δεδομένων: SUBSCRIBESSE Gatewayk8s-sse-gatewayΤο SSE Gateway εγγράφεται μέσω ενός κοινόχρηστου listener ανά διεργασία και διανέμει σε κάθε συνδεδεμένο πρόγραμμα περιήγησης.
SSE Gateway
k8s-sse-gatewayροή δεδομένων: Ροή SSEΠρόγραμμα περιήγησηςΣύνδεση που ανοίγει μέσω της ίδιας διαδρομής ALB και ingress. Η παράδοση είναι at-least-once, και τα διπλότυπα χειρίζονται ταυτοδύναμα.
chat-worker
k8s-worker-ai · k8s-worker-ai-2ροή δεδομένων: checkpointCachek8s-redis-cacheΤο checkpoint του LangGraph κρατιέται στο Redis Cache.
Cache
k8s-redis-cacheροή δεδομένων: ανάγνωση checkpointcheckpoint-syncerk8s-worker-ai · k8s-worker-ai-2Ο checkpoint-syncer διαβάζει το checkpoint από το Redis.
checkpoint-syncer
k8s-worker-ai · k8s-worker-ai-2ροή δεδομένων: συγχρονισμός σε PostgreSQLPostgreSQLk8s-postgresqlΤο AsyncPostgresSaver το αποθηκεύει ασύγχρονα στην PostgreSQL.
Streams
k8s-redis-streamsροή δεδομένων: chat-persistence grouppersistence consumerk8s-api-chatΟ persistence consumer στον κόμβο Chat διαβάζει συμβάντα done ως consumer group.
persistence consumer
k8s-api-chatροή δεδομένων: αποθήκευση μηνυμάτωνPostgreSQLk8s-postgresqlΤα μηνύματα του Chat αποθηκεύονται στην PostgreSQL. Είναι διαφορετικός φόρτος εργασίας από τον checkpoint-syncer.
Είσοδος · ταυτοποίηση
Η σύγχρονη διαδρομή από την είσοδο της συστοιχίας σε ένα Domain API. Μόνο οι διαδρομές που προστατεύει πολιτική ελέγχουν πρώτα την ταυτοποίηση, και η κίνηση Pods μεταξύ κόμβων τρέχει σε Calico VXLAN.
Πρόγραμμα περιήγησηςαναζήτηση DNS: Αναζήτηση DNSRoute 53
Από τις εγγραφές Route 53 επιλύεται μόνο το όνομα. Τα αιτήματα δεν περνούν από το DNS.
Πρόγραμμα περιήγησηςροή δεδομένων: HTTPS 443AWS ALB
Το TLS τερματίζεται στο ALB.
AWS ALBροή δεδομένων: HTTP · NodePortIstio ingress Envoy
k8s-ingress-gatewayΠαραδίδεται στο Istio ingress Envoy μέσω του NodePort του στόχου EC2 instance.
Istio ingress Envoy
k8s-ingress-gatewayροή δεδομένων: ext-authz · gRPC 50051ext-authzk8s-api-authΜόνο οι διαδρομές υπό πολιτική CUSTOM ρωτούν πρώτα το Go ext-authz (χρονικό όριο 2 s, failOpen false). Διαδρομές όπως login, health και docs εξαιρούνται.
ext-authz
k8s-api-authροή δεδομένων: αναζήτηση blacklistblacklistk8s-redis-authΤο token ελέγχεται απέναντι στη blacklist του Redis.
Istio ingress Envoy
k8s-ingress-gatewayροή δεδομένων: VirtualServiceChat APIk8s-api-chatΔρομολογείται στο Chat API.
Chat API
k8s-api-chatροή δεδομένων: gRPCimages APIk8s-api-imageΗ σύγχρονη κλήση chat → images που αναφέρεται στο README.
auth API
k8s-api-authροή δεδομένων: gRPCusers APIk8s-api-usersΗ σύγχρονη κλήση auth → users που αναφέρεται στο README.
Δεξαμενή storage · ασύγχρονες εγγραφές
Η blacklist ταυτοποίησης και η ιδιοκτησία χαρακτήρων αποθηκεύονται από workers της δεξαμενής storage που παίρνουν τη δουλειά τους από το RabbitMQ.
blacklist
k8s-redis-authροή δεδομένων: outbox:blacklistauth-relayk8s-worker-storage · k8s-worker-storage-2Ο auth-relay (το auth-Bus του README) διαβάζει το outbox του Redis.
auth-relay
k8s-worker-storage · k8s-worker-storage-2ροή δεδομένων: blacklist.eventsRabbitMQk8s-rabbitmqΑναδημοσιεύει στο RabbitMQ, με επαναλήψεις και DLQ.
RabbitMQ
k8s-rabbitmqροή δεδομένων: blacklist.eventsauth-workerk8s-worker-storage · k8s-worker-storage-2Ο auth-worker λαμβάνει τα συμβάντα blacklist.
auth-worker
k8s-worker-storage · k8s-worker-storage-2ροή δεδομένων: αποθήκευση blacklistblacklistk8s-redis-authΑποθηκεύονται στη blacklist του Redis.
RabbitMQ
k8s-rabbitmqροή δεδομένων: Celery batchusers-workerk8s-worker-storage · k8s-worker-storage-2Ο users-worker λαμβάνει σε παρτίδες εργασίες ιδιοκτησίας χαρακτήρων.
users-worker
k8s-worker-storage · k8s-worker-storage-2ροή δεδομένων: UPSERTPostgreSQLk8s-postgresqlΕφαρμόζεται στην PostgreSQL.
Ρύθμιση · κλιμάκωση · παρατήρηση
Το Platform Layer δεν είναι βήμα από το οποίο περνούν αιτήματα, αλλά αναπτύσσει, ρυθμίζει, κλιμακώνει και παρατηρεί τα άλλα επίπεδα. Οι κόμβοι είναι instances EC2 που δημιούργησε το Terraform, με kubeadm και Calico εγκατεστημένα από το Ansible. Το CI μόνο επικυρώνει το Terraform και δεν το εφαρμόζει ποτέ αυτόματα.
GitHub Actions · Docker Hubρύθμιση · κλιμάκωση: image · έκδοση manifestArgo CD image updater
k8s-masterΤο Argo CD ευθυγραμμίζει τη διάταξη της συστοιχίας μέσω App-of-Apps και Sync Waves. Η τοποθέτηση στο control-plane επιβεβαιώθηκε μόνο για τον image updater.
ALB Controller · ExternalDNS
k8s-masterρύθμιση · κλιμάκωση: Ingress → ALB · εγγραφές DNSΔιαχειριζόμενο από AWSΟ ALB Controller και το ExternalDNS ρυθμίζουν πόρους στην πλευρά του AWS. Δεν είναι διαδρομή που ακολουθούν τα αιτήματα.
Istiod
k8s-masterρύθμιση · κλιμάκωση: Ρύθμιση xDSIstio ingress Envoyk8s-ingress-gatewayΤο Istiod στέλνει μέσω xDS τις ρυθμίσεις Gateway, VirtualService και EnvoyFilter στο ingress Envoy και στο Envoy sidecar κάθε API.
KEDA
k8s-monitoringρύθμιση · κλιμάκωση: πλήθος podsΔεξαμενή AIk8s-worker-ai · k8s-worker-ai-2Το KEDA προσαρμόζει το πλήθος των pods των workers. Το πλήθος των κόμβων δεν αλλάζει.
KEDA
k8s-monitoringρύθμιση · κλιμάκωση: πλήθος podsδεξαμενή storagek8s-worker-storage · k8s-worker-storage-2Τα pods των workers της δεξαμενής storage κλιμακώνονται με τον ίδιο τρόπο.
Fluent Bitπαρατηρησιμότητα: αρχεία καταγραφήςElasticsearch
k8s-loggingΤο Fluent Bit είναι DaemonSet σε κάθε κόμβο και στέλνει τα αρχεία καταγραφής στο Elasticsearch.
Δεξαμενή AI
k8s-worker-ai · k8s-worker-ai-2παρατηρησιμότητα: Ιχνηλάτηση εκτελέσεων LLMLangSmithΤα ίχνη κλήσεων LLM πηγαίνουν στο LangSmith, ένα εξωτερικό SaaS.
Κάθε σύνδεση με το ίδιο πάχος. Επιλέξτε μια ροή για να επισημανθεί μόνο η διαδρομή της, με αριθμημένα βήματα.
- Συνεχής · η κατεύθυνση ροής αιτημάτων, εργασιών, συμβάντων και εγγραφών
- Με τελείες · αναζήτηση DNS, τα αιτήματα δεν περνούν από εκεί
- Διακεκομμένη · ρύθμιση ή κλιμάκωση, όχι διαδρομή δεδομένων
- Μακριά παύλα-τελεία · αρχεία καταγραφής και ιχνηλάτηση εκτελέσεων
- Παχιά μαύρη γραμμή · η επιλεγμένη ροή, οι αριθμοί δίνουν τη σειρά
- Κουτί · φυσικός κόμβος, με το όνομα του host στην κεφαλίδα
- Εσωτερικό τσιπ · φόρτος εργασίας που τρέχει σε αυτόν τον κόμβο
- Διακεκομμένο πλαίσιο · δεξαμενή χρονοπρογραμματισμού δύο κόμβων
- Διακεκομμένο κουτί · εκτός της συστοιχίας, δεν μετρά ως κόμβος
- Πορτοκαλί περίγραμμα · σημείο όπου αποφασίζει ένα μοντέλο
- Control plane1 κόμβος
- Domain API8 κόμβοι
- Δεξαμενή AI2 κόμβοι
- δεξαμενή storage2 κόμβοι
- Data5 κόμβοι
- Platform6 κόμβοι
Τα πέντε επίπεδα του README (οι ζώνες) και οι φυσικές ομάδες (η απόχρωση της κεφαλίδας κάθε κόμβου) ομαδοποιούν διαφορετικά τους ίδιους 24 κόμβους. Το State KV μοιράζεται τον κόμβο Streams και δεν μετριέται χωριστά, ενώ το Route 53, το ALB και οι υπηρεσίες εκτός συστοιχίας δεν είναι κόμβοι. Μια δεξαμενή είναι εύρος χρονοπρογραμματισμού, όχι ισχυρισμός ότι κάθε pod τρέχει και στους δύο κόμβους.
24κόμβοι
24 = 1 control plane + 8 API + 4 worker + 5 data + 6 platform
1Control plane
role: control-planekube-apiserver · scheduler · controller-manager · etcd, καθώς και οι ελεγκτές της πλατφόρμας.
- k8s-master
8Domain API
domain: <υπηρεσία>Ένας κόμβος ανά τομέα. Οι εσωτερικές κλήσεις χρησιμοποιούν gRPC.
- k8s-api-auth
- k8s-api-users
- k8s-api-scan
- k8s-api-character
- k8s-api-location
- k8s-api-image
- k8s-api-chat
- k8s-api-info
4Execution worker
Δύο δεξαμενές χρονοπρογραμματισμού με δύο κόμβους η καθεμία. Το KEDA αλλάζει το πλήθος των pods, ενώ το πλήθος των κόμβων μένει ίδιο.
δεξαμενή storage
domain: worker-storage- k8s-worker-storage
- k8s-worker-storage-2
Δεξαμενή AI
domain: worker-ai- k8s-worker-ai
- k8s-worker-ai-2
5Data
Το Redis χωρίζεται σε τέσσερις κόμβους ανά χρήση. Ο χώρος αποθήκευσης του PostgreSQL είναι EBS CSI · gp3.
- k8s-postgresql
- k8s-redis-auth
- k8s-redis-streams
- k8s-redis-cache
- k8s-redis-pubsub
6Platform
Η ανταλλαγή μηνυμάτων, η παρατηρησιμότητα, το ingress και η παράδοση σε πραγματικό χρόνο έχουν το καθένα τον δικό του κόμβο.
- k8s-rabbitmq
- k8s-monitoring
- k8s-logging
- k8s-ingress-gateway
- k8s-sse-gateway
- k8s-event-router
- Κάθε κόμβος
- Fluent Bit · DaemonSet
- Calico
Ρυθμισμένα μοντέλα · ανά πάροχο
Η υπηρεσία έχει κλείσει, οπότε αυτά είναι τα μοντέλα που ήταν ρυθμισμένα στο αποθετήριο, όχι επιλογές διαθέσιμες σήμερα. Κάθε ρόλος αναφέρεται χωριστά, και δεν είναι λίστα επαληθευμένων εκτελέσεων.
OpenAI
Προεπιλεγμένος πάροχος του Chat
Chat
openai/gpt-5.2προεπιλογή
Το προεπιλεγμένο μοντέλο είναι το gpt-5.2. Αν το αίτημα ορίζει μοντέλο, χρησιμοποιείται εκείνο.
Scan
gpt-5.2προεπιλογήgpt-5.2-progpt-5.1gpt-5gpt-5-progpt-5-mini
Μοντέλα εκτός της αντιστοίχισης 13 μοντέλων απορρίπτονται.
Αντιστοίχιση εικόνων
gpt-image-1.5
Χωριστά από το gpt-5.2, το μοντέλο ενορχήστρωσης του Responses. Η παραγωγή εικόνων είναι απενεργοποιημένη από προεπιλογή.
Αξιολόγηση
gpt-4o-miniπροεπιλογή
Ο βαθμολογητής LLM για την αξιολόγηση συνομιλιών, χωριστός από το μοντέλο του Chat.
Google
Όταν το Chat επιλέγει Google
Chat
google/gemini-3-pro-previewgoogle/gemini-3-flash-preview
Με επιλεγμένη την Google, προεπιλογή είναι το gemini-3-flash-preview.
Scan
gemini-3-pro-previewgemini-3-flash-previewgemini-2.5-progemini-2.5-flashgemini-2.5-flash-litegemini-2.0-flashgemini-2.0-flash-lite
Αντιστοίχιση εικόνων
gemini-3-pro-image-preview
Πηγήbackend main d8840c7Δημόσιο commit September 29, 2026 · ελέγχθηκε October 8, 2026