当前位置: 首页 > wzjs >正文

甘肃临夏州建设局网站武汉排名seo公司

甘肃临夏州建设局网站,武汉排名seo公司,政府网站开发建设方案,wordpress禁止加载头部前言 只对之前这篇文章进行了补充 403 Forbidden问题的解决 这几天用了一下ESMC-6B的API,发现被403 forbidden了 排查问题查来查去,发现需要翻墙才可以访问(怎么又被针对了) 于是就需要在服务器上面接入VPN,想了想…

前言

只对之前这篇文章进行了补充

403 Forbidden问题的解决

这几天用了一下ESMC-6B的API,发现被403 forbidden了

排查问题查来查去,发现需要翻墙才可以访问(怎么又被针对了)

于是就需要在服务器上面接入VPN,想了想太麻烦,就直接使用ssh转发

首先在本地机上运行以下命令,建立ssh反向连接

ssh -R 127.0.0.1:7890:127.0.0.1:7890 user@remote_server.com

然后在服务器的screen终端上运行以下代码,把该终端的网络代理全部使用7890端口发送

export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890

这样就可以把服务器上某个终端的所有网络请求,利用ssh反向连接转发到本地机使用的clash端口,然后就可以实现在服务器上面连接本地的VPN。

多线程优化API调用

评价是把计网的知识忘完了

其实优化方式还有利用多线程加速(我真呆,之前没想到这个),官方在2025年1月份的更新中加入了这个教程。

这个的效果好像还可以,下午跑了1小时40分钟,跑了6600+组,平均下来大概1秒1组

关于token审核,我大概等了一个多月才审核通过。。。实在不行的同学就再等等吧。。。

另外注意长度限制,超过2048长度的蛋白质无法进行embedding接口的调用。

代码

使用的是esm 3.1.3库

from esm.sdk import client
from getpass import getpass
from concurrent.futures import ThreadPoolExecutor
from typing import Sequence
import os
from tqdm import tqdm
from time import sleep
import pickle
import torchfrom esm.sdk.api import (ESM3InferenceClient,ESMProtein,ESMProteinError,LogitsConfig,LogitsOutput,ProteinType,
)# 需要自行修改为合适的读取格式
def read_seq(seqfilepath):with open(seqfilepath,"r") as f:line = f.readline()seq = f.readline()return seqdef embed_sequence(model: ESM3InferenceClient, protein_id: str, sequence: str) -> LogitsOutput:protein = ESMProtein(sequence=sequence)while True:protein_tensor = model.encode(protein)if isinstance(protein_tensor,ESMProteinError):print(protein_tensor)sleep(1)continuebreakwhile True:logits_output = model.logits(protein_tensor, LogitsConfig(sequence=True, return_embeddings=True))if isinstance(logits_output,ESMProteinError):print(logits_output)sleep(1)continuebreakreturn protein_id, logits_output.embeddings.sum(dim=1)def batch_embed(model: ESM3InferenceClient, inputs, embedding_dir):"""Forge supports auto-batching. So batch_embed() is as simple as running a collectionof embed calls in parallel using asyncio."""error_list = []with ThreadPoolExecutor(max_workers=16) as executor:futures = [executor.submit(embed_sequence, model, protein_id, inputs[protein_id]) for protein_id in inputs.keys()]all = len(futures)for i,future in enumerate(futures):try:protein_id, emb = future.result()with open(os.path.join(embedding_dir,protein_id,"origin_seq_emb_6b.pkl"),"wb") as f:pickle.dump(emb,f)print(i,"/",all," Success ",protein_id)except Exception as e:print(i,"/",all,f" Error: {e}")error_list.append(protein_id)return error_listtoken = getpass("Token from Forge console: ")
model = client(model="esmc-6b-2024-12", url="https://forge.evolutionaryscale.ai", token=token)seq_dict = {}
data_dir = "输入路径(建议自己修改)"
embedding_dir = "输出路径"
for protein_id in tqdm(os.listdir(data_dir)):seq_path = os.path.join(data_dir,protein_id,"seq.fasta")seq = read_seq(seq_path)if len(seq) > 2048:continueif os.path.exists(os.path.join(embedding_dir,protein_id,"origin_seq_emb_6b.pkl")):continueseq_dict[protein_id] = read_seq(seq_path)error_list = batch_embed(model, seq_dict, embedding_dir)import json
with open("error_list.json","w") as f:json.dump(error_list,f,indent=4)

http://www.dtcms.com/wzjs/341198.html

相关文章:

  • 延边北京网站建设外贸营销型网站设计
  • 潍坊市奎文区建设局网站西安seo盐城
  • 中国铁建华南建设有限公司网站百度推广服务费一年多少钱
  • 南京建设局的网站广州关键词排名推广
  • 安丘住房建设局网站网络信息发布平台
  • 优秀网站设计网站seo搜索引擎优化教程
  • 中文域名网站骗局线下推广有哪几种渠道
  • 自己搭服务器 做购物网站成本公司seo推广营销网站
  • 网站制作过程网络营销公司经营范围
  • 网站建设的公司系统规划方案seo优化的方法有哪些
  • html怎么做网页框架网络优化软件
  • 无锡工程建设招标网站 seo won
  • 湘潭网站建设 磐石网络荣誉雅虎搜索
  • 金融网站设计方案免费创建网站的平台
  • 咖啡店网站首页怎么做百度一下百度搜索入口
  • 网站模板 瀑布流网站免费高清素材软件
  • 2014山东春季高考网站建设宁波做网站的公司
  • 网站建设方案 报价怎么弄自己的网站
  • 做国际网站怎么做深圳经济最新新闻
  • 网站建设费用归类广告视频
  • wordpress 添加下载按钮seo排名哪家正规
  • 新网站如何做优化网店推广方法有哪些
  • 泰安个人代做网站迅雷下载磁力天堂
  • 17一起广州做网站尚硅谷培训机构官网
  • 用什么建网站口碑营销是什么
  • 重庆装修公司网站建设东莞市民最新疫情
  • 织梦cms做视频网站泉州seo托管
  • 南通网站建设方案品牌推广的具体方法
  • 什么网站可以做海报赚钱网络营销推广的5种方法
  • 做网站就必须要开公司吗广告推广方案怎么写