腾讯元宝自动切换至deepseek

腾讯元宝进入页面和新建对话时自动切换模型为deepseek

目前为 2025-02-20 提交的版本,查看 最新版本

// ==UserScript==
// @name         腾讯元宝自动切换至deepseek
// @namespace    http://tampermonkey.net/
// @version      1.0
// @license MIT
// @description  腾讯元宝进入页面和新建对话时自动切换模型为deepseek
// @author       Diyun
// @match        https://yuanbao.tencent.com/*
// @icon         https://cdn-bot.hunyuan.tencent.com/logo.png
// @grant        none
// @run-at       document-end
// ==/UserScript==

(function() {
    'use strict';

    // 智能元素检测函数
    const waitForElement = (selector, isXPath = false) => {
        return new Promise(resolve => {
            const check = () => {
                let element;
                if (isXPath) {
                    const result = document.evaluate(
                        selector,
                        document,
                        null,
                        XPathResult.FIRST_ORDERED_NODE_TYPE,
                        null
                    );
                    element = result.singleNodeValue;
                } else {
                    element = document.querySelector(selector);
                }
                element ? resolve(element) : setTimeout(check, 50);
            };
            check();
        });
    };

    // 模型切换主逻辑
    const autoSwitchModel = async () => {
        try {
            // 第一阶段:等待并点击模型切换按钮
            const switchBtn = await waitForElement('button[dt-button-id="model_switch"]');
            switchBtn.click();

            // 第二阶段:等待并选择目标模型
            const targetItem = await waitForElement(
                '//div[contains(@class,"drop-down-item")][.//div[text()="DeepSeek"]][.//div[contains(.,"深度思考")]]',
                true
            );
            targetItem.click();

            console.log('[智能切换] 模型切换成功');
        } catch (err) {
            console.error('[智能切换] 操作失败:', err);
        }
    };

    // 绑定新建对话按钮监听
    const bindNewChatListener = async () => {
        try {
            const newChatBtn = await waitForElement('.yb-common-nav__hd__new-chat.J_UseGuideNewChat0');
            newChatBtn.addEventListener('click', () => {
                console.log('[智能切换] 检测到新建对话操作');
                setTimeout(autoSwitchModel, 800); // 稍作延迟确保DOM更新
            });
        } catch (err) {
            console.error('[智能切换] 新建对话按钮绑定失败:', err);
        }
    };

    // 页面初始化逻辑
    const init = () => {
        // 首次加载执行
        setTimeout(() => {
            autoSwitchModel();
            bindNewChatListener();
        }, 1000);

        // 持续监听DOM变化(应对SPA场景)
        const observer = new MutationObserver(() => {
            bindNewChatListener(); // 自动重新绑定可能新出现的按钮
        });
        observer.observe(document.body, {
            childList: true,
            subtree: true
        });
    };

    // 启动脚本
    window.addEventListener('load', init);
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址