Memo
https://xdaforums.com/t/14-rom-lineageos-21-0-unofficial-1-0-2024-02-25.4659246/
https://github.com/j4nn/xperable/tree/master
https://archive.org/download/xperia-firmware/%E5%9B%BD%E5%86%85%E7%89%88Xperia/Xperia%20XZ1/
SAM3の Segmantation を実施する
COCOのデータセットの一枚を用いて、Segmantationの評価方法であるIoUを使って評価する。
詳細は以下に記載する
sam3を試す。 https://github.com/facebookresearch/sam3
特になし。
このモデルは使用するためにリクエストと承認が必要なので実施する。
https://huggingface.co/facebook/sam3
# create virtual enviroment venv_name=work_venv # Pick a name for your environment uv venv $venv_name --python 3.12 # This will create a folder named $venv_name in your working dir source $venv_name/bin/activate # refer to https://github.com/self-improving/shared-environment, install and setup ##2 Install PyTorch with CUDA support: uv pip install torch==2.7.0 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126 ##3Clone the repository and install the package: pip install -U pip setuptools wheel git clone https://github.com/facebookresearch/sam3.git cd sam3 pip install -e .
# refer to https://github.com/facebookresearch/sam3/blob/main/examples/sam3_image_predictor_example.ipynb
$ cat test.py
import os
import sys
import matplotlib.pyplot as plt
from PIL import Image
# Use GPU 1 by default (zero-based index). Override by setting CUDA_VISIBLE_DEVICES.
os.environ.setdefault("CUDA_VISIBLE_DEVICES", "1")
# Allow running against the local sam3 repo without installing the package.
REPO_ROOT = os.path.dirname(__file__)
SAM3_REPO = os.path.join(REPO_ROOT, "sam3")
sys.path.insert(0, SAM3_REPO)
import sam3
from sam3.model_builder import build_sam3_image_model
from sam3.model.sam3_image_processor import Sam3Processor
from sam3.visualization_utils import plot_results
# Load the model
sam3_root = os.path.join(os.path.dirname(sam3.__file__), "..")
bpe_path = os.path.join(sam3_root, "sam3", "assets", "bpe_simple_vocab_16e6.txt.gz")
model = build_sam3_image_model(bpe_path=bpe_path)
processor = Sam3Processor(model, confidence_threshold=0.5)
if len(sys.argv) < 2:
raise SystemExit("Usage: python3 test.py /path/to/image")
image_path = sys.argv[1]
image = Image.open(image_path)
inference_state = processor.set_image(image)
processor.reset_all_prompts(inference_state)
inference_state = processor.set_text_prompt(state=inference_state, prompt="shoe")
img0 = Image.open(image_path)
plot_results(img0, inference_state)
output_path = os.path.join(os.path.dirname(__file__), "plot_results.png")
plt.savefig(output_path, bbox_inches="tight")
print(f"saved: {output_path}")
実行する
$ python3 test.py assets/images/test_image.jpg found 12 object(s) saved: /home/inoue_reo/research/sam3/plot_results.png
出力結果を確認し、 https://github.com/facebookresearch/sam3/blob/main/examples/sam3_image_predictor_example.ipynb と同様の画像を得ることが出来た

ClickUpとRooCodeを連携する
以下を参考にMCP Server の設定を行う。
MCPで連携を確認する前に認証を行う。
一度、以下のコマンドで起動し、指定されたURL:http://127.0.0.1:30432/wait-for-auth にアクセスして認証を完了する。
$ npx -y mcp-remote https://mcp.clickup.com/mcp ... [33615] Querying: http://127.0.0.1:30432/wait-for-auth ...
Roo CodeでMCPの設定を行う。

設定と認証後、MCPのCapability(Tools・Resources・Prompts)が認識されていることを確認する。

RooCodeのクライアントから呼び出せることを確認する。

Androidのアプリをバイブコーディングで作成する。
Androidのアプリをバイブコーディングで作成する。
Rorkはクロスプラットフォームモバイルアプリ開発フレームワークです。JavaScriptを使用してAndroidアプリを開発することができる。
Expoと組み合わせて使用されることが多い。
Expoはリアクトネイティブの開発プラットフォームで、AndroidやiOSでモバイルアプリを構築できる。
Rorkでバイブコーディングする。

AndroidでExpoをインストール後、ExpoでQRコードを読み取り、アプリの挙動を確認する。
Hydra(Facebook/Meta が開発した Python 用設定管理フレームワーク)をハンズオンしてみる。
Hydraの感覚を掴む。
まずはインストールします。
$ pip install hydra-core
$ mkdir hydra-min && cd hydra-min
config.yaml を作成する。
$ cat << 'EOF' > config.yaml name: world EOF
app.py を作成する。
$ cat << 'EOF' > app.py
import hydra
from omegaconf import DictConfig
@hydra.main(config_path=".", config_name="config", version_base=None)
def main(cfg: DictConfig):
print(f"Hello, {cfg.name}!")
if __name__ == "__main__":
main()
EOF
#verify $ python3 app.py Hello, world! $ python3 app.py name=Japan Hello, Japan!
RooCodeを用いたMCPサーバの動作確認
初めてなのでよくわからないのでメモする。
uvを使って、仮装環境作成する。
# 仮装環境作成 uv venv source .venv/bin/activate # MCPサーバーのPython SDKをインストール uv add "mcp[cli]"
MCPサーバは以下である。
/home/azureuser/mcp-server/hellomcp/main.py
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("HelloMCP")
@mcp.tool()
def add(a: int, b: int) -> int:
"""Add two numbers"""
return a + b
@mcp.resource("greeting://{name}")
def get_greeting(name: str) -> str:
"""Get a personalized greeting"""
return f"Hello, {name}!"
@mcp.prompt()
def translation_ja(txt: str) -> str:
"""Translating to Japanese"""
return f"Please translate this sentence into Japanese:\n\n{txt}"
Roo Codeで使用する、mcp_settings.jsonの設定は以下である
{
"mcpServers": {
"HelloMCP": {
"command": "/home/azureuser/mcp-server/hellomcp/.venv/bin/python",
"args": [
"/home/azureuser/mcp-server/hellomcp/main.py"
],
"env": {},
"alwaysAllow": [],
"disabled": false
}
}
}
Roo CodeでMCPサーバの設定をする。 以下の小節を参考に実施した。
RooCodeで試してみる。 resourceの入力例
greeting://Taro
