codota / TabNine

AI Code Completions

Home Page:https://tabnine.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Question] How to visit TabNineHub on a remote ssh machine running vim?

htfy96 opened this issue · comments

please complete the following information:

  • OS version: [e.g. Win 10, Mac Catalina]: Debian Linux
  • Editor: [e.g. vscode, intelij, sublime]: Neovim
  • Editor version: v0.8.0-dev+422-g619eb32c7
  • Programming language: [e.g. js, ts, c++] c++
  • TabNine extension version: deoplete-tabnine the latest version
  • Engine version (could be located within Tabnine Hub): According to the logs: 4.4.42

Issue Details:

Hi, I'm running TabNine via deoplete-tabnine on a remote machine via ssh, and after paying for Pro I'm trying to figure out a way to config TabNine via TabnineHub. Typing Tabnine::config has no effect as no browser window pops up and no related lines in the log. Is there a way to change its config on that host? ~/.config/TabNine/tabnine_config.json exists while all fields are undocumented.

Logs attached. Not sure if it's working properly:

Log
INFO [TabNine::main_utils] [2022-06-22:17:54:14 TabNine INFO] /usr/scratch/vic/local/.plugged/deoplete-tabnine/binaries/4.4.42/x86_64-unknown-linux-musl/TabNine --client deoplete --log-file-path /usr/scratch/vic/local/.plugged/d
eoplete-tabnine/tabnine.log --idle_suicide_seconds 3600
INFO [global_config::config_migrations] [2022-06-22:17:54:14 TabNine INFO] Migrating configuration properties if necessary...
INFO [global_config::config_migrations] [2022-06-22:17:54:14 TabNine INFO] Migrating "deep_completions_work_mode"...
INFO [watchdog_api::wd_client] [2022-06-22:17:54:14 TabNine INFO] Initializing watchdog client...
INFO [watchdog_api::wd_client] [2022-06-22:17:54:14 TabNine INFO] Starting watchdog...
INFO [TabNine::bootstrap_support] [2022-06-22:17:54:14 TabNine INFO] trying to start tabnine version Some("4.4.42")
INFO [TabNine::bootstrap_support] [2022-06-22:17:54:14 TabNine INFO] spawning tabnine with args ["/usr/scratch/vic/local/.plugged/deoplete-tabnine/binaries/4.4.42/x86_64-unknown-linux-musl/TabNine", "--client", "deoplete", "--lo
g-file-path", "/usr/scratch/vic/local/.plugged/deoplete-tabnine/tabnine.log", "--idle_suicide_seconds", "3600", "--no_bootstrap"]
INFO [TabNine::bootstrap_support] [2022-06-22:17:54:14 TabNine INFO] started tabnine process pid 3582410 version Some("4.4.42"), desired version was Some("4.4.42") this version is Some("4.4.42")
INFO [TabNine::main_utils] [2022-06-22:17:54:14 TabNine INFO] /usr/scratch/vic/local/.plugged/deoplete-tabnine/binaries/4.4.42/x86_64-unknown-linux-musl/TabNine --client deoplete --log-file-path /usr/scratch/vic/local/.plugged/d
eoplete-tabnine/tabnine.log --idle_suicide_seconds 3600 --no_bootstrap
INFO [watchdog_api::wd_client] [2022-06-22:17:54:14 TabNine INFO] Initializing watchdog client...
INFO [bootstrapper::bootstrapper_lib] [2022-06-22:17:54:14 TabNine INFO] current version is Some(Version { major: 4, minor: 4, patch: 42, pre: [], build: [] }), spawned version is Some(Version { major: 4, minor: 4, patch: 42, pr
e: [], build: [] }), remote version is Version { major: 4, minor: 4, patch: 42, pre: [], build: [] }
INFO [bootstrapper::bootstrapper_lib] [2022-06-22:17:54:14 TabNine INFO] don't need to upgrade
INFO [global_config::config_migrations] [2022-06-22:17:54:14 TabNine INFO] Migrating configuration properties if necessary...
INFO [global_config::config_migrations] [2022-06-22:17:54:14 TabNine INFO] Migrating "deep_completions_work_mode"...
INFO [recommend_tabnine_extension] [2022-06-22:17:54:14 TabNine INFO] not registering recommender
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] No private model found
ERROR [models_api_singleton] [2022-06-22:17:54:14 TabNine ERROR] File exists (os error 17)
INFO [lunar_connection::model_chooser] [2022-06-22:17:54:14 TabNine INFO] current private model is None
INFO [lunar_connection::model_chooser] [2022-06-22:17:54:14 TabNine INFO] using initial model Model {
    model_hash_override: None,
    model_size: Small,
    base_url: "https://update.tabnine.com",
}
INFO [lunar_connection] [2022-06-22:17:54:14 TabNine INFO] lunar settings update thread started (Local(Public) default local)
INFO [lunar_connection::local_lunar_connection] [2022-06-22:17:54:14 TabNine INFO] starting default model pre-loader DownloadSettings {
    api_key: None,
    meta_data_base_url: "https://api.tabnine.com",
    model: Model {
        model_hash_override: None,
        model_size: Small,
        base_url: "https://update.tabnine.com",
    },
}
INFO [lunar_connection::project_model_override_installer] [2022-06-22:17:54:14 TabNine INFO] project model override feature is disabled
INFO [lunar_connection] [2022-06-22:17:54:14 TabNine INFO] lunar settings update thread started (Local(Public) default local)
INFO [lunar_connection] [2022-06-22:17:54:14 TabNine INFO] lunar settings update thread started (Remote cloud)
INFO [lunar_connection::model_chooser_connections] [2022-06-22:17:54:14 TabNine INFO] Started model connection config watcher loop.
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] Starting private model update thread
INFO [frontend::initialize] [2022-06-22:17:54:14 TabNine INFO] Started.
INFO [lunar_connection::local_lunar_connection] [2022-06-22:17:54:14 TabNine INFO] running command "/usr/scratch/vic/local/.plugged/deoplete-tabnine/binaries/4.4.42/x86_64-unknown-linux-musl/TabNine-deep-local" "--settings" "/ho
me/vic/.config/TabNine/local.settingsSmall" "--settings-version" "1" "--log-file-path" "/usr/scratch/vic/local/.plugged/deoplete-tabnine/tabnine.log" "--client" "deoplete"
INFO [global_config::config_migrations] [2022-06-22:17:54:14 TabNine-deep-local INFO] Migrating configuration properties if necessary...
INFO [global_config::config_migrations] [2022-06-22:17:54:14 TabNine-deep-local INFO] Migrating "deep_completions_work_mode"...
INFO [TabNine_deep_local] [2022-06-22:17:54:14 TabNine-deep-local INFO] parsed settings are Some(Settings { cpu_model: CpuModelSettings { rate_limit_interval_seconds: None, rate_limit_amount: None, enable_power_saving_mode: fals
e }, download: DownloadSettings { api_key: None, meta_data_base_url: "https://api.tabnine.com", model: Model { model_hash_override: None, model_size: Small, base_url: "https://update.tabnine.com" } }, tune: TuneSettings { enable
_power_saving_mode: false, override_beams: None, override_context_length: None }, run: RunSettings { is_enabled: true, omit_prefix_suggestions: false, line_suggestions: false } })
INFO [TabNine_deep_local] [2022-06-22:17:54:14 TabNine-deep-local INFO] local_lock_path "/home/vic/.config/TabNine/4.4.42/TabNine-deep-local.lockSmall"
INFO [TabNine_deep_local] [2022-06-22:17:54:14 TabNine-deep-local INFO] using settings Settings { cpu_model: CpuModelSettings { rate_limit_interval_seconds: None, rate_limit_amount: None, enable_power_saving_mode: false }, downl
oad: DownloadSettings { api_key: None, meta_data_base_url: "https://api.tabnine.com", model: Model { model_hash_override: None, model_size: Small, base_url: "https://update.tabnine.com" } }, tune: TuneSettings { enable_power_sav
ing_mode: false, override_beams: None, override_context_length: None }, run: RunSettings { is_enabled: true, omit_prefix_suggestions: false, line_suggestions: false } }
INFO [watchdog_api::wd_client] [2022-06-22:17:54:14 TabNine-deep-local INFO] Initializing watchdog client...
INFO [team_ai::data_handling] [2022-06-22:17:54:14 TabNine INFO] Initialized team ai database successfully at: /home/vic/.local/share/TabNine/team_learning/data_dir/sdb
INFO [team_ai] [2022-06-22:17:54:14 TabNine INFO] Initialized team ai learning successfully
INFO [frontend::pro_advanced_completions_capabilities_listener] [2022-06-22:17:54:14 TabNine INFO] initializing pro advanced completions capabilities subscriber...
INFO [auth::capabilities] [2022-06-22:17:54:14 TabNine INFO] User changed. Refreshing capabilities
INFO [frontend::pro_advanced_completions_capabilities_listener] [2022-06-22:17:54:14 TabNine INFO] pro advanced completions capabilities subscriber detected a change
INFO [auth::capabilities] [2022-06-22:17:54:14 TabNine INFO] Refreshing capabilities
ERROR [models_api::models_api_client] [2022-06-22:17:54:14 TabNine ERROR] No such file or directory (os error 2)
INFO [frontend::pro_advanced_completions_capabilities_listener] [2022-06-22:17:54:14 TabNine INFO] pro advanced completions capabilities subscriber detected a change
INFO [team_ai::data_handling] [2022-06-22:17:54:14 TabNine INFO] Cleaned 0 old data rows from team ai local database.
INFO [team_ai::data_handling] [2022-06-22:17:54:14 TabNine INFO] Cleaned 0 old metadata rows from team ai local database.
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] Checking if private model changed
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] active private model is None
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] removing private models from cache
ERROR [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine ERROR] Failed to remove private models from cache: No such file or directory (os error 2)
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] private model is same
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] sleeping for 3600s
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] Checking if private model changed
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] active private model is None
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] removing private models from cache
ERROR [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine ERROR] Failed to remove private models from cache: No such file or directory (os error 2)
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] private model is same
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] sleeping for 3600s
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] Checking if private model changed
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] active private model is None
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] removing private models from cache
ERROR [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine ERROR] Failed to remove private models from cache: No such file or directory (os error 2)
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] private model is same
INFO [lunar_connection::connection_choosers::private_models::state] [2022-06-22:17:54:14 TabNine INFO] sleeping for 3600s
INFO [lunar_endpoints::local::server] [2022-06-22:17:54:14 TabNine-deep-local INFO] Got new local client connection 127.0.0.1:37532
INFO [lunar_local::bridge] [2022-06-22:17:54:14 TabNine-deep-local INFO] TabNine Local communication thread started.
INFO [lunar_local::bridge] [2022-06-22:17:54:14 TabNine-deep-local INFO] Loading model...
ERROR [model_file_protocol::read] [2022-06-22:17:54:14 TabNine-deep-local ERROR] Failed to read header: Magic version mismatch
INFO [cpu_model::model_format] [2022-06-22:17:54:14 TabNine-deep-local INFO] No language mapping provided - falling back to default
INFO [lunar_local::bridge] [2022-06-22:17:54:15 TabNine-deep-local INFO] Done loading model (took 0.50 seconds).
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:54:15 TabNine WARN] Could not find any private model
INFO [lunar_connection::local_lunar_connection] [2022-06-22:17:54:15 TabNine INFO] running command "/usr/scratch/vic/local/.plugged/deoplete-tabnine/binaries/4.4.42/x86_64-unknown-linux-musl/TabNine-deep-local" "--settings" "/ho
me/vic/.config/TabNine/local.settingsSmall" "--settings-version" "1" "--log-file-path" "/usr/scratch/vic/local/.plugged/deoplete-tabnine/tabnine.log" "--client" "deoplete"
INFO [global_config::config_migrations] [2022-06-22:17:54:15 TabNine-deep-local INFO] Migrating configuration properties if necessary...
INFO [global_config::config_migrations] [2022-06-22:17:54:15 TabNine-deep-local INFO] Migrating "deep_completions_work_mode"...
INFO [TabNine_deep_local] [2022-06-22:17:54:15 TabNine-deep-local INFO] parsed settings are Some(Settings { cpu_model: CpuModelSettings { rate_limit_interval_seconds: None, rate_limit_amount: None, enable_power_saving_mode: fals
e }, download: DownloadSettings { api_key: None, meta_data_base_url: "https://api.tabnine.com", model: Model { model_hash_override: None, model_size: Small, base_url: "https://update.tabnine.com" } }, tune: TuneSettings { enable
_power_saving_mode: false, override_beams: None, override_context_length: None }, run: RunSettings { is_enabled: true, omit_prefix_suggestions: false, line_suggestions: false } })
INFO [TabNine_deep_local] [2022-06-22:17:54:15 TabNine-deep-local INFO] local_lock_path "/home/vic/.config/TabNine/4.4.42/TabNine-deep-local.lockSmall"
INFO [TabNine_deep_local] [2022-06-22:17:54:15 TabNine-deep-local INFO] TabNine-deep-local is already running, responding with existing port
INFO [lunar_endpoints::local::server] [2022-06-22:17:54:15 TabNine-deep-local INFO] Got new local client connection 127.0.0.1:37536
ERROR [server::query_lunar] [2022-06-22:17:54:15 TabNine ERROR] ""
ERROR [server::query_lunar] [2022-06-22:17:54:15 TabNine ERROR] ""
ERROR [server::query_lunar] [2022-06-22:17:54:15 TabNine ERROR] Lunar completion "" does not start with ""
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:54:15 TabNine WARN] Could not find any private model
INFO [lunar_connection::local_lunar_connection] [2022-06-22:17:54:15 TabNine INFO] TabNine-deep-local exited with status exit status: 0
INFO [lunar_local::tune] [2022-06-22:17:54:15 TabNine-deep-local INFO] Selected 3 beams.
INFO [lunar_local::tune] [2022-06-22:17:54:15 TabNine-deep-local INFO] Selected context length of 200.
INFO [lunar_connection::local_lunar_connection] [2022-06-22:17:54:15 TabNine INFO] setting default model analytics
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:54:16 TabNine WARN] Could not find any private model
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:54:16 TabNine WARN] Could not find any private model
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:54:16 TabNine WARN] Could not find any private model
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:54:16 TabNine WARN] Could not find any private model
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:54:16 TabNine WARN] Could not find any private model
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:56:28 TabNine WARN] Could not find any private model
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:56:29 TabNine WARN] Could not find any private model
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:56:30 TabNine WARN] Could not find any private model
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:56:30 TabNine WARN] Could not find any private model
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:56:30 TabNine WARN] Could not find any private model
WARN [lunar_connection::connection_choosers::private_models::private_connection_chooser] [2022-06-22:17:56:30 TabNine WARN] Could not find any private model
WARN [cpu_model::user_thread] [2022-06-22:17:56:30 TabNine-deep-local WARN] An update was dropped because we couldn't acquire the lock.

gz#15590

Never mind. I got it working through hacks. Here're the steps:

  1. Find out the PID of the Tabnine process spawned directly by the editor (Not WD-TabNine or TabNine-DeepLocal)
  2. echo '{"version": "2.0.0", "request": {"Configuration": {}}}' > /proc/{pid}/fd/0
  3. ps aux | grep xdg-open to find out the URL of the hub. In my case it's http://127.0.0.1:3928/sec-XXX
  4. forward the port (3928 in my example) to localhost: ssh -N -L 3928:localhost:3928 {remote ssh host} -v
  5. Visit http://127.0.0.1:3928/sec-XXX